!(function (t) {
  var n = {};
  function r(e) {
    if (n[e]) return n[e].exports;
    var a = (n[e] = { i: e, l: !1, exports: {} });
    return t[e].call(a.exports, a, a.exports, r), (a.l = !0), a.exports;
  }
  (r.m = t),
    (r.c = n),
    (r.d = function (t, n, e) {
      r.o(t, n) || Object.defineProperty(t, n, { enumerable: !0, get: e });
    }),
    (r.r = function (t) {
      "undefined" !== typeof Symbol &&
        Symbol.toStringTag &&
        Object.defineProperty(t, Symbol.toStringTag, { value: "Module" }),
        Object.defineProperty(t, "__esModule", { value: !0 });
    }),
    (r.t = function (t, n) {
      if ((1 & n && (t = r(t)), 8 & n)) return t;
      if (4 & n && "object" === typeof t && t && t.__esModule) return t;
      var e = Object.create(null);
      if (
        (r.r(e),
        Object.defineProperty(e, "default", { enumerable: !0, value: t }),
        2 & n && "string" != typeof t)
      )
        for (var a in t)
          r.d(
            e,
            a,
            function (n) {
              return t[n];
            }.bind(null, a)
          );
      return e;
    }),
    (r.n = function (t) {
      var n =
        t && t.__esModule
          ? function () {
              return t.default;
            }
          : function () {
              return t;
            };
      return r.d(n, "a", n), n;
    }),
    (r.o = function (t, n) {
      return Object.prototype.hasOwnProperty.call(t, n);
    }),
    (r.p = "/"),
    r((r.s = 765));
})({
  100: function (t, n, r) {
    "use strict";
    var e = r(26),
      a = r(121);
    n.a = function (t, n) {
      if (t)
        if (Object(e.a)(t))
          for (var r = 0, o = t.length; r < o && !1 !== n(t[r], r); r++);
        else if (Object(a.a)(t))
          for (var i in t) if (t.hasOwnProperty(i) && !1 === n(t[i], i)) break;
    };
  },
  110: function (t, n, r) {
    "use strict";
    r.r(n),
      r.d(n, "create", function () {
        return a;
      }),
      r.d(n, "clone", function () {
        return o;
      }),
      r.d(n, "length", function () {
        return i;
      }),
      r.d(n, "fromValues", function () {
        return u;
      }),
      r.d(n, "copy", function () {
        return c;
      }),
      r.d(n, "set", function () {
        return f;
      }),
      r.d(n, "add", function () {
        return l;
      }),
      r.d(n, "subtract", function () {
        return s;
      }),
      r.d(n, "multiply", function () {
        return d;
      }),
      r.d(n, "divide", function () {
        return h;
      }),
      r.d(n, "ceil", function () {
        return p;
      }),
      r.d(n, "floor", function () {
        return _;
      }),
      r.d(n, "min", function () {
        return m;
      }),
      r.d(n, "max", function () {
        return b;
      }),
      r.d(n, "round", function () {
        return v;
      }),
      r.d(n, "scale", function () {
        return g;
      }),
      r.d(n, "scaleAndAdd", function () {
        return M;
      }),
      r.d(n, "distance", function () {
        return y;
      }),
      r.d(n, "squaredDistance", function () {
        return x;
      }),
      r.d(n, "squaredLength", function () {
        return w;
      }),
      r.d(n, "negate", function () {
        return O;
      }),
      r.d(n, "inverse", function () {
        return C;
      }),
      r.d(n, "normalize", function () {
        return A;
      }),
      r.d(n, "dot", function () {
        return E;
      }),
      r.d(n, "cross", function () {
        return j;
      }),
      r.d(n, "lerp", function () {
        return P;
      }),
      r.d(n, "hermite", function () {
        return k;
      }),
      r.d(n, "bezier", function () {
        return D;
      }),
      r.d(n, "random", function () {
        return I;
      }),
      r.d(n, "transformMat4", function () {
        return R;
      }),
      r.d(n, "transformMat3", function () {
        return q;
      }),
      r.d(n, "transformQuat", function () {
        return T;
      }),
      r.d(n, "rotateX", function () {
        return L;
      }),
      r.d(n, "rotateY", function () {
        return U;
      }),
      r.d(n, "rotateZ", function () {
        return B;
      }),
      r.d(n, "angle", function () {
        return S;
      }),
      r.d(n, "zero", function () {
        return K;
      }),
      r.d(n, "str", function () {
        return N;
      }),
      r.d(n, "exactEquals", function () {
        return V;
      }),
      r.d(n, "equals", function () {
        return W;
      }),
      r.d(n, "sub", function () {
        return $;
      }),
      r.d(n, "mul", function () {
        return F;
      }),
      r.d(n, "div", function () {
        return G;
      }),
      r.d(n, "dist", function () {
        return z;
      }),
      r.d(n, "sqrDist", function () {
        return H;
      }),
      r.d(n, "len", function () {
        return Q;
      }),
      r.d(n, "sqrLen", function () {
        return X;
      }),
      r.d(n, "forEach", function () {
        return Z;
      });
    var e = r(19);
    function a() {
      var t = new e.a(3);
      return e.a != Float32Array && ((t[0] = 0), (t[1] = 0), (t[2] = 0)), t;
    }
    function o(t) {
      var n = new e.a(3);
      return (n[0] = t[0]), (n[1] = t[1]), (n[2] = t[2]), n;
    }
    function i(t) {
      var n = t[0],
        r = t[1],
        e = t[2];
      return Math.hypot(n, r, e);
    }
    function u(t, n, r) {
      var a = new e.a(3);
      return (a[0] = t), (a[1] = n), (a[2] = r), a;
    }
    function c(t, n) {
      return (t[0] = n[0]), (t[1] = n[1]), (t[2] = n[2]), t;
    }
    function f(t, n, r, e) {
      return (t[0] = n), (t[1] = r), (t[2] = e), t;
    }
    function l(t, n, r) {
      return (
        (t[0] = n[0] + r[0]), (t[1] = n[1] + r[1]), (t[2] = n[2] + r[2]), t
      );
    }
    function s(t, n, r) {
      return (
        (t[0] = n[0] - r[0]), (t[1] = n[1] - r[1]), (t[2] = n[2] - r[2]), t
      );
    }
    function d(t, n, r) {
      return (
        (t[0] = n[0] * r[0]), (t[1] = n[1] * r[1]), (t[2] = n[2] * r[2]), t
      );
    }
    function h(t, n, r) {
      return (
        (t[0] = n[0] / r[0]), (t[1] = n[1] / r[1]), (t[2] = n[2] / r[2]), t
      );
    }
    function p(t, n) {
      return (
        (t[0] = Math.ceil(n[0])),
        (t[1] = Math.ceil(n[1])),
        (t[2] = Math.ceil(n[2])),
        t
      );
    }
    function _(t, n) {
      return (
        (t[0] = Math.floor(n[0])),
        (t[1] = Math.floor(n[1])),
        (t[2] = Math.floor(n[2])),
        t
      );
    }
    function m(t, n, r) {
      return (
        (t[0] = Math.min(n[0], r[0])),
        (t[1] = Math.min(n[1], r[1])),
        (t[2] = Math.min(n[2], r[2])),
        t
      );
    }
    function b(t, n, r) {
      return (
        (t[0] = Math.max(n[0], r[0])),
        (t[1] = Math.max(n[1], r[1])),
        (t[2] = Math.max(n[2], r[2])),
        t
      );
    }
    function v(t, n) {
      return (
        (t[0] = Math.round(n[0])),
        (t[1] = Math.round(n[1])),
        (t[2] = Math.round(n[2])),
        t
      );
    }
    function g(t, n, r) {
      return (t[0] = n[0] * r), (t[1] = n[1] * r), (t[2] = n[2] * r), t;
    }
    function M(t, n, r, e) {
      return (
        (t[0] = n[0] + r[0] * e),
        (t[1] = n[1] + r[1] * e),
        (t[2] = n[2] + r[2] * e),
        t
      );
    }
    function y(t, n) {
      var r = n[0] - t[0],
        e = n[1] - t[1],
        a = n[2] - t[2];
      return Math.hypot(r, e, a);
    }
    function x(t, n) {
      var r = n[0] - t[0],
        e = n[1] - t[1],
        a = n[2] - t[2];
      return r * r + e * e + a * a;
    }
    function w(t) {
      var n = t[0],
        r = t[1],
        e = t[2];
      return n * n + r * r + e * e;
    }
    function O(t, n) {
      return (t[0] = -n[0]), (t[1] = -n[1]), (t[2] = -n[2]), t;
    }
    function C(t, n) {
      return (t[0] = 1 / n[0]), (t[1] = 1 / n[1]), (t[2] = 1 / n[2]), t;
    }
    function A(t, n) {
      var r = n[0],
        e = n[1],
        a = n[2],
        o = r * r + e * e + a * a;
      return (
        o > 0 && (o = 1 / Math.sqrt(o)),
        (t[0] = n[0] * o),
        (t[1] = n[1] * o),
        (t[2] = n[2] * o),
        t
      );
    }
    function E(t, n) {
      return t[0] * n[0] + t[1] * n[1] + t[2] * n[2];
    }
    function j(t, n, r) {
      var e = n[0],
        a = n[1],
        o = n[2],
        i = r[0],
        u = r[1],
        c = r[2];
      return (
        (t[0] = a * c - o * u),
        (t[1] = o * i - e * c),
        (t[2] = e * u - a * i),
        t
      );
    }
    function P(t, n, r, e) {
      var a = n[0],
        o = n[1],
        i = n[2];
      return (
        (t[0] = a + e * (r[0] - a)),
        (t[1] = o + e * (r[1] - o)),
        (t[2] = i + e * (r[2] - i)),
        t
      );
    }
    function k(t, n, r, e, a, o) {
      var i = o * o,
        u = i * (2 * o - 3) + 1,
        c = i * (o - 2) + o,
        f = i * (o - 1),
        l = i * (3 - 2 * o);
      return (
        (t[0] = n[0] * u + r[0] * c + e[0] * f + a[0] * l),
        (t[1] = n[1] * u + r[1] * c + e[1] * f + a[1] * l),
        (t[2] = n[2] * u + r[2] * c + e[2] * f + a[2] * l),
        t
      );
    }
    function D(t, n, r, e, a, o) {
      var i = 1 - o,
        u = i * i,
        c = o * o,
        f = u * i,
        l = 3 * o * u,
        s = 3 * c * i,
        d = c * o;
      return (
        (t[0] = n[0] * f + r[0] * l + e[0] * s + a[0] * d),
        (t[1] = n[1] * f + r[1] * l + e[1] * s + a[1] * d),
        (t[2] = n[2] * f + r[2] * l + e[2] * s + a[2] * d),
        t
      );
    }
    function I(t, n) {
      n = n || 1;
      var r = 2 * e.c() * Math.PI,
        a = 2 * e.c() - 1,
        o = Math.sqrt(1 - a * a) * n;
      return (
        (t[0] = Math.cos(r) * o), (t[1] = Math.sin(r) * o), (t[2] = a * n), t
      );
    }
    function R(t, n, r) {
      var e = n[0],
        a = n[1],
        o = n[2],
        i = r[3] * e + r[7] * a + r[11] * o + r[15];
      return (
        (i = i || 1),
        (t[0] = (r[0] * e + r[4] * a + r[8] * o + r[12]) / i),
        (t[1] = (r[1] * e + r[5] * a + r[9] * o + r[13]) / i),
        (t[2] = (r[2] * e + r[6] * a + r[10] * o + r[14]) / i),
        t
      );
    }
    function q(t, n, r) {
      var e = n[0],
        a = n[1],
        o = n[2];
      return (
        (t[0] = e * r[0] + a * r[3] + o * r[6]),
        (t[1] = e * r[1] + a * r[4] + o * r[7]),
        (t[2] = e * r[2] + a * r[5] + o * r[8]),
        t
      );
    }
    function T(t, n, r) {
      var e = r[0],
        a = r[1],
        o = r[2],
        i = r[3],
        u = n[0],
        c = n[1],
        f = n[2],
        l = a * f - o * c,
        s = o * u - e * f,
        d = e * c - a * u,
        h = a * d - o * s,
        p = o * l - e * d,
        _ = e * s - a * l,
        m = 2 * i;
      return (
        (l *= m),
        (s *= m),
        (d *= m),
        (h *= 2),
        (p *= 2),
        (_ *= 2),
        (t[0] = u + l + h),
        (t[1] = c + s + p),
        (t[2] = f + d + _),
        t
      );
    }
    function L(t, n, r, e) {
      var a = [],
        o = [];
      return (
        (a[0] = n[0] - r[0]),
        (a[1] = n[1] - r[1]),
        (a[2] = n[2] - r[2]),
        (o[0] = a[0]),
        (o[1] = a[1] * Math.cos(e) - a[2] * Math.sin(e)),
        (o[2] = a[1] * Math.sin(e) + a[2] * Math.cos(e)),
        (t[0] = o[0] + r[0]),
        (t[1] = o[1] + r[1]),
        (t[2] = o[2] + r[2]),
        t
      );
    }
    function U(t, n, r, e) {
      var a = [],
        o = [];
      return (
        (a[0] = n[0] - r[0]),
        (a[1] = n[1] - r[1]),
        (a[2] = n[2] - r[2]),
        (o[0] = a[2] * Math.sin(e) + a[0] * Math.cos(e)),
        (o[1] = a[1]),
        (o[2] = a[2] * Math.cos(e) - a[0] * Math.sin(e)),
        (t[0] = o[0] + r[0]),
        (t[1] = o[1] + r[1]),
        (t[2] = o[2] + r[2]),
        t
      );
    }
    function B(t, n, r, e) {
      var a = [],
        o = [];
      return (
        (a[0] = n[0] - r[0]),
        (a[1] = n[1] - r[1]),
        (a[2] = n[2] - r[2]),
        (o[0] = a[0] * Math.cos(e) - a[1] * Math.sin(e)),
        (o[1] = a[0] * Math.sin(e) + a[1] * Math.cos(e)),
        (o[2] = a[2]),
        (t[0] = o[0] + r[0]),
        (t[1] = o[1] + r[1]),
        (t[2] = o[2] + r[2]),
        t
      );
    }
    function S(t, n) {
      var r = t[0],
        e = t[1],
        a = t[2],
        o = n[0],
        i = n[1],
        u = n[2],
        c = Math.sqrt(r * r + e * e + a * a) * Math.sqrt(o * o + i * i + u * u),
        f = c && E(t, n) / c;
      return Math.acos(Math.min(Math.max(f, -1), 1));
    }
    function K(t) {
      return (t[0] = 0), (t[1] = 0), (t[2] = 0), t;
    }
    function N(t) {
      return "vec3(" + t[0] + ", " + t[1] + ", " + t[2] + ")";
    }
    function V(t, n) {
      return t[0] === n[0] && t[1] === n[1] && t[2] === n[2];
    }
    function W(t, n) {
      var r = t[0],
        a = t[1],
        o = t[2],
        i = n[0],
        u = n[1],
        c = n[2];
      return (
        Math.abs(r - i) <= e.b * Math.max(1, Math.abs(r), Math.abs(i)) &&
        Math.abs(a - u) <= e.b * Math.max(1, Math.abs(a), Math.abs(u)) &&
        Math.abs(o - c) <= e.b * Math.max(1, Math.abs(o), Math.abs(c))
      );
    }
    var $ = s,
      F = d,
      G = h,
      z = y,
      H = x,
      Q = i,
      X = w,
      Z = (function () {
        var t = a();
        return function (n, r, e, a, o, i) {
          var u, c;
          for (
            r || (r = 3),
              e || (e = 0),
              c = a ? Math.min(a * r + e, n.length) : n.length,
              u = e;
            u < c;
            u += r
          )
            (t[0] = n[u]),
              (t[1] = n[u + 1]),
              (t[2] = n[u + 2]),
              o(t, t, i),
              (n[u] = t[0]),
              (n[u + 1] = t[1]),
              (n[u + 2] = t[2]);
          return n;
        };
      })();
  },
  12: function (t, n, r) {
    "use strict";
    var e = {};
    r.r(e),
      r.d(e, "create", function () {
        return i;
      }),
      r.d(e, "clone", function () {
        return u;
      }),
      r.d(e, "copy", function () {
        return c;
      }),
      r.d(e, "identity", function () {
        return f;
      }),
      r.d(e, "fromValues", function () {
        return l;
      }),
      r.d(e, "set", function () {
        return s;
      }),
      r.d(e, "transpose", function () {
        return d;
      }),
      r.d(e, "invert", function () {
        return h;
      }),
      r.d(e, "adjoint", function () {
        return p;
      }),
      r.d(e, "determinant", function () {
        return _;
      }),
      r.d(e, "multiply", function () {
        return m;
      }),
      r.d(e, "rotate", function () {
        return b;
      }),
      r.d(e, "scale", function () {
        return v;
      }),
      r.d(e, "fromRotation", function () {
        return g;
      }),
      r.d(e, "fromScaling", function () {
        return M;
      }),
      r.d(e, "str", function () {
        return y;
      }),
      r.d(e, "frob", function () {
        return x;
      }),
      r.d(e, "LDU", function () {
        return w;
      }),
      r.d(e, "add", function () {
        return O;
      }),
      r.d(e, "subtract", function () {
        return C;
      }),
      r.d(e, "exactEquals", function () {
        return A;
      }),
      r.d(e, "equals", function () {
        return E;
      }),
      r.d(e, "multiplyScalar", function () {
        return j;
      }),
      r.d(e, "multiplyScalarAndAdd", function () {
        return P;
      }),
      r.d(e, "mul", function () {
        return k;
      }),
      r.d(e, "sub", function () {
        return D;
      });
    var a = {};
    r.r(a),
      r.d(a, "create", function () {
        return I;
      }),
      r.d(a, "fromMat4", function () {
        return R;
      }),
      r.d(a, "clone", function () {
        return q;
      }),
      r.d(a, "copy", function () {
        return T;
      }),
      r.d(a, "fromValues", function () {
        return L;
      }),
      r.d(a, "set", function () {
        return U;
      }),
      r.d(a, "identity", function () {
        return B;
      }),
      r.d(a, "transpose", function () {
        return S;
      }),
      r.d(a, "invert", function () {
        return K;
      }),
      r.d(a, "adjoint", function () {
        return N;
      }),
      r.d(a, "determinant", function () {
        return V;
      }),
      r.d(a, "multiply", function () {
        return W;
      }),
      r.d(a, "translate", function () {
        return $;
      }),
      r.d(a, "rotate", function () {
        return F;
      }),
      r.d(a, "scale", function () {
        return G;
      }),
      r.d(a, "fromTranslation", function () {
        return z;
      }),
      r.d(a, "fromRotation", function () {
        return H;
      }),
      r.d(a, "fromScaling", function () {
        return Q;
      }),
      r.d(a, "fromMat2d", function () {
        return X;
      }),
      r.d(a, "fromQuat", function () {
        return Z;
      }),
      r.d(a, "normalFromMat4", function () {
        return Y;
      }),
      r.d(a, "projection", function () {
        return J;
      }),
      r.d(a, "str", function () {
        return tt;
      }),
      r.d(a, "frob", function () {
        return nt;
      }),
      r.d(a, "add", function () {
        return rt;
      }),
      r.d(a, "subtract", function () {
        return et;
      }),
      r.d(a, "multiplyScalar", function () {
        return at;
      }),
      r.d(a, "multiplyScalarAndAdd", function () {
        return ot;
      }),
      r.d(a, "exactEquals", function () {
        return it;
      }),
      r.d(a, "equals", function () {
        return ut;
      }),
      r.d(a, "mul", function () {
        return ct;
      }),
      r.d(a, "sub", function () {
        return ft;
      });
    var o = r(19);
    function i() {
      var t = new o.a(4);
      return (
        o.a != Float32Array && ((t[1] = 0), (t[2] = 0)),
        (t[0] = 1),
        (t[3] = 1),
        t
      );
    }
    function u(t) {
      var n = new o.a(4);
      return (n[0] = t[0]), (n[1] = t[1]), (n[2] = t[2]), (n[3] = t[3]), n;
    }
    function c(t, n) {
      return (t[0] = n[0]), (t[1] = n[1]), (t[2] = n[2]), (t[3] = n[3]), t;
    }
    function f(t) {
      return (t[0] = 1), (t[1] = 0), (t[2] = 0), (t[3] = 1), t;
    }
    function l(t, n, r, e) {
      var a = new o.a(4);
      return (a[0] = t), (a[1] = n), (a[2] = r), (a[3] = e), a;
    }
    function s(t, n, r, e, a) {
      return (t[0] = n), (t[1] = r), (t[2] = e), (t[3] = a), t;
    }
    function d(t, n) {
      if (t === n) {
        var r = n[1];
        (t[1] = n[2]), (t[2] = r);
      } else (t[0] = n[0]), (t[1] = n[2]), (t[2] = n[1]), (t[3] = n[3]);
      return t;
    }
    function h(t, n) {
      var r = n[0],
        e = n[1],
        a = n[2],
        o = n[3],
        i = r * o - a * e;
      return i
        ? ((i = 1 / i),
          (t[0] = o * i),
          (t[1] = -e * i),
          (t[2] = -a * i),
          (t[3] = r * i),
          t)
        : null;
    }
    function p(t, n) {
      var r = n[0];
      return (t[0] = n[3]), (t[1] = -n[1]), (t[2] = -n[2]), (t[3] = r), t;
    }
    function _(t) {
      return t[0] * t[3] - t[2] * t[1];
    }
    function m(t, n, r) {
      var e = n[0],
        a = n[1],
        o = n[2],
        i = n[3],
        u = r[0],
        c = r[1],
        f = r[2],
        l = r[3];
      return (
        (t[0] = e * u + o * c),
        (t[1] = a * u + i * c),
        (t[2] = e * f + o * l),
        (t[3] = a * f + i * l),
        t
      );
    }
    function b(t, n, r) {
      var e = n[0],
        a = n[1],
        o = n[2],
        i = n[3],
        u = Math.sin(r),
        c = Math.cos(r);
      return (
        (t[0] = e * c + o * u),
        (t[1] = a * c + i * u),
        (t[2] = e * -u + o * c),
        (t[3] = a * -u + i * c),
        t
      );
    }
    function v(t, n, r) {
      var e = n[0],
        a = n[1],
        o = n[2],
        i = n[3],
        u = r[0],
        c = r[1];
      return (t[0] = e * u), (t[1] = a * u), (t[2] = o * c), (t[3] = i * c), t;
    }
    function g(t, n) {
      var r = Math.sin(n),
        e = Math.cos(n);
      return (t[0] = e), (t[1] = r), (t[2] = -r), (t[3] = e), t;
    }
    function M(t, n) {
      return (t[0] = n[0]), (t[1] = 0), (t[2] = 0), (t[3] = n[1]), t;
    }
    function y(t) {
      return "mat2(" + t[0] + ", " + t[1] + ", " + t[2] + ", " + t[3] + ")";
    }
    function x(t) {
      return Math.hypot(t[0], t[1], t[2], t[3]);
    }
    function w(t, n, r, e) {
      return (
        (t[2] = e[2] / e[0]),
        (r[0] = e[0]),
        (r[1] = e[1]),
        (r[3] = e[3] - t[2] * r[1]),
        [t, n, r]
      );
    }
    function O(t, n, r) {
      return (
        (t[0] = n[0] + r[0]),
        (t[1] = n[1] + r[1]),
        (t[2] = n[2] + r[2]),
        (t[3] = n[3] + r[3]),
        t
      );
    }
    function C(t, n, r) {
      return (
        (t[0] = n[0] - r[0]),
        (t[1] = n[1] - r[1]),
        (t[2] = n[2] - r[2]),
        (t[3] = n[3] - r[3]),
        t
      );
    }
    function A(t, n) {
      return t[0] === n[0] && t[1] === n[1] && t[2] === n[2] && t[3] === n[3];
    }
    function E(t, n) {
      var r = t[0],
        e = t[1],
        a = t[2],
        i = t[3],
        u = n[0],
        c = n[1],
        f = n[2],
        l = n[3];
      return (
        Math.abs(r - u) <= o.b * Math.max(1, Math.abs(r), Math.abs(u)) &&
        Math.abs(e - c) <= o.b * Math.max(1, Math.abs(e), Math.abs(c)) &&
        Math.abs(a - f) <= o.b * Math.max(1, Math.abs(a), Math.abs(f)) &&
        Math.abs(i - l) <= o.b * Math.max(1, Math.abs(i), Math.abs(l))
      );
    }
    function j(t, n, r) {
      return (
        (t[0] = n[0] * r),
        (t[1] = n[1] * r),
        (t[2] = n[2] * r),
        (t[3] = n[3] * r),
        t
      );
    }
    function P(t, n, r, e) {
      return (
        (t[0] = n[0] + r[0] * e),
        (t[1] = n[1] + r[1] * e),
        (t[2] = n[2] + r[2] * e),
        (t[3] = n[3] + r[3] * e),
        t
      );
    }
    var k = m,
      D = C;
    function I() {
      var t = new o.a(9);
      return (
        o.a != Float32Array &&
          ((t[1] = 0),
          (t[2] = 0),
          (t[3] = 0),
          (t[5] = 0),
          (t[6] = 0),
          (t[7] = 0)),
        (t[0] = 1),
        (t[4] = 1),
        (t[8] = 1),
        t
      );
    }
    function R(t, n) {
      return (
        (t[0] = n[0]),
        (t[1] = n[1]),
        (t[2] = n[2]),
        (t[3] = n[4]),
        (t[4] = n[5]),
        (t[5] = n[6]),
        (t[6] = n[8]),
        (t[7] = n[9]),
        (t[8] = n[10]),
        t
      );
    }
    function q(t) {
      var n = new o.a(9);
      return (
        (n[0] = t[0]),
        (n[1] = t[1]),
        (n[2] = t[2]),
        (n[3] = t[3]),
        (n[4] = t[4]),
        (n[5] = t[5]),
        (n[6] = t[6]),
        (n[7] = t[7]),
        (n[8] = t[8]),
        n
      );
    }
    function T(t, n) {
      return (
        (t[0] = n[0]),
        (t[1] = n[1]),
        (t[2] = n[2]),
        (t[3] = n[3]),
        (t[4] = n[4]),
        (t[5] = n[5]),
        (t[6] = n[6]),
        (t[7] = n[7]),
        (t[8] = n[8]),
        t
      );
    }
    function L(t, n, r, e, a, i, u, c, f) {
      var l = new o.a(9);
      return (
        (l[0] = t),
        (l[1] = n),
        (l[2] = r),
        (l[3] = e),
        (l[4] = a),
        (l[5] = i),
        (l[6] = u),
        (l[7] = c),
        (l[8] = f),
        l
      );
    }
    function U(t, n, r, e, a, o, i, u, c, f) {
      return (
        (t[0] = n),
        (t[1] = r),
        (t[2] = e),
        (t[3] = a),
        (t[4] = o),
        (t[5] = i),
        (t[6] = u),
        (t[7] = c),
        (t[8] = f),
        t
      );
    }
    function B(t) {
      return (
        (t[0] = 1),
        (t[1] = 0),
        (t[2] = 0),
        (t[3] = 0),
        (t[4] = 1),
        (t[5] = 0),
        (t[6] = 0),
        (t[7] = 0),
        (t[8] = 1),
        t
      );
    }
    function S(t, n) {
      if (t === n) {
        var r = n[1],
          e = n[2],
          a = n[5];
        (t[1] = n[3]),
          (t[2] = n[6]),
          (t[3] = r),
          (t[5] = n[7]),
          (t[6] = e),
          (t[7] = a);
      } else
        (t[0] = n[0]),
          (t[1] = n[3]),
          (t[2] = n[6]),
          (t[3] = n[1]),
          (t[4] = n[4]),
          (t[5] = n[7]),
          (t[6] = n[2]),
          (t[7] = n[5]),
          (t[8] = n[8]);
      return t;
    }
    function K(t, n) {
      var r = n[0],
        e = n[1],
        a = n[2],
        o = n[3],
        i = n[4],
        u = n[5],
        c = n[6],
        f = n[7],
        l = n[8],
        s = l * i - u * f,
        d = -l * o + u * c,
        h = f * o - i * c,
        p = r * s + e * d + a * h;
      return p
        ? ((p = 1 / p),
          (t[0] = s * p),
          (t[1] = (-l * e + a * f) * p),
          (t[2] = (u * e - a * i) * p),
          (t[3] = d * p),
          (t[4] = (l * r - a * c) * p),
          (t[5] = (-u * r + a * o) * p),
          (t[6] = h * p),
          (t[7] = (-f * r + e * c) * p),
          (t[8] = (i * r - e * o) * p),
          t)
        : null;
    }
    function N(t, n) {
      var r = n[0],
        e = n[1],
        a = n[2],
        o = n[3],
        i = n[4],
        u = n[5],
        c = n[6],
        f = n[7],
        l = n[8];
      return (
        (t[0] = i * l - u * f),
        (t[1] = a * f - e * l),
        (t[2] = e * u - a * i),
        (t[3] = u * c - o * l),
        (t[4] = r * l - a * c),
        (t[5] = a * o - r * u),
        (t[6] = o * f - i * c),
        (t[7] = e * c - r * f),
        (t[8] = r * i - e * o),
        t
      );
    }
    function V(t) {
      var n = t[0],
        r = t[1],
        e = t[2],
        a = t[3],
        o = t[4],
        i = t[5],
        u = t[6],
        c = t[7],
        f = t[8];
      return n * (f * o - i * c) + r * (-f * a + i * u) + e * (c * a - o * u);
    }
    function W(t, n, r) {
      var e = n[0],
        a = n[1],
        o = n[2],
        i = n[3],
        u = n[4],
        c = n[5],
        f = n[6],
        l = n[7],
        s = n[8],
        d = r[0],
        h = r[1],
        p = r[2],
        _ = r[3],
        m = r[4],
        b = r[5],
        v = r[6],
        g = r[7],
        M = r[8];
      return (
        (t[0] = d * e + h * i + p * f),
        (t[1] = d * a + h * u + p * l),
        (t[2] = d * o + h * c + p * s),
        (t[3] = _ * e + m * i + b * f),
        (t[4] = _ * a + m * u + b * l),
        (t[5] = _ * o + m * c + b * s),
        (t[6] = v * e + g * i + M * f),
        (t[7] = v * a + g * u + M * l),
        (t[8] = v * o + g * c + M * s),
        t
      );
    }
    function $(t, n, r) {
      var e = n[0],
        a = n[1],
        o = n[2],
        i = n[3],
        u = n[4],
        c = n[5],
        f = n[6],
        l = n[7],
        s = n[8],
        d = r[0],
        h = r[1];
      return (
        (t[0] = e),
        (t[1] = a),
        (t[2] = o),
        (t[3] = i),
        (t[4] = u),
        (t[5] = c),
        (t[6] = d * e + h * i + f),
        (t[7] = d * a + h * u + l),
        (t[8] = d * o + h * c + s),
        t
      );
    }
    function F(t, n, r) {
      var e = n[0],
        a = n[1],
        o = n[2],
        i = n[3],
        u = n[4],
        c = n[5],
        f = n[6],
        l = n[7],
        s = n[8],
        d = Math.sin(r),
        h = Math.cos(r);
      return (
        (t[0] = h * e + d * i),
        (t[1] = h * a + d * u),
        (t[2] = h * o + d * c),
        (t[3] = h * i - d * e),
        (t[4] = h * u - d * a),
        (t[5] = h * c - d * o),
        (t[6] = f),
        (t[7] = l),
        (t[8] = s),
        t
      );
    }
    function G(t, n, r) {
      var e = r[0],
        a = r[1];
      return (
        (t[0] = e * n[0]),
        (t[1] = e * n[1]),
        (t[2] = e * n[2]),
        (t[3] = a * n[3]),
        (t[4] = a * n[4]),
        (t[5] = a * n[5]),
        (t[6] = n[6]),
        (t[7] = n[7]),
        (t[8] = n[8]),
        t
      );
    }
    function z(t, n) {
      return (
        (t[0] = 1),
        (t[1] = 0),
        (t[2] = 0),
        (t[3] = 0),
        (t[4] = 1),
        (t[5] = 0),
        (t[6] = n[0]),
        (t[7] = n[1]),
        (t[8] = 1),
        t
      );
    }
    function H(t, n) {
      var r = Math.sin(n),
        e = Math.cos(n);
      return (
        (t[0] = e),
        (t[1] = r),
        (t[2] = 0),
        (t[3] = -r),
        (t[4] = e),
        (t[5] = 0),
        (t[6] = 0),
        (t[7] = 0),
        (t[8] = 1),
        t
      );
    }
    function Q(t, n) {
      return (
        (t[0] = n[0]),
        (t[1] = 0),
        (t[2] = 0),
        (t[3] = 0),
        (t[4] = n[1]),
        (t[5] = 0),
        (t[6] = 0),
        (t[7] = 0),
        (t[8] = 1),
        t
      );
    }
    function X(t, n) {
      return (
        (t[0] = n[0]),
        (t[1] = n[1]),
        (t[2] = 0),
        (t[3] = n[2]),
        (t[4] = n[3]),
        (t[5] = 0),
        (t[6] = n[4]),
        (t[7] = n[5]),
        (t[8] = 1),
        t
      );
    }
    function Z(t, n) {
      var r = n[0],
        e = n[1],
        a = n[2],
        o = n[3],
        i = r + r,
        u = e + e,
        c = a + a,
        f = r * i,
        l = e * i,
        s = e * u,
        d = a * i,
        h = a * u,
        p = a * c,
        _ = o * i,
        m = o * u,
        b = o * c;
      return (
        (t[0] = 1 - s - p),
        (t[3] = l - b),
        (t[6] = d + m),
        (t[1] = l + b),
        (t[4] = 1 - f - p),
        (t[7] = h - _),
        (t[2] = d - m),
        (t[5] = h + _),
        (t[8] = 1 - f - s),
        t
      );
    }
    function Y(t, n) {
      var r = n[0],
        e = n[1],
        a = n[2],
        o = n[3],
        i = n[4],
        u = n[5],
        c = n[6],
        f = n[7],
        l = n[8],
        s = n[9],
        d = n[10],
        h = n[11],
        p = n[12],
        _ = n[13],
        m = n[14],
        b = n[15],
        v = r * u - e * i,
        g = r * c - a * i,
        M = r * f - o * i,
        y = e * c - a * u,
        x = e * f - o * u,
        w = a * f - o * c,
        O = l * _ - s * p,
        C = l * m - d * p,
        A = l * b - h * p,
        E = s * m - d * _,
        j = s * b - h * _,
        P = d * b - h * m,
        k = v * P - g * j + M * E + y * A - x * C + w * O;
      return k
        ? ((k = 1 / k),
          (t[0] = (u * P - c * j + f * E) * k),
          (t[1] = (c * A - i * P - f * C) * k),
          (t[2] = (i * j - u * A + f * O) * k),
          (t[3] = (a * j - e * P - o * E) * k),
          (t[4] = (r * P - a * A + o * C) * k),
          (t[5] = (e * A - r * j - o * O) * k),
          (t[6] = (_ * w - m * x + b * y) * k),
          (t[7] = (m * M - p * w - b * g) * k),
          (t[8] = (p * x - _ * M + b * v) * k),
          t)
        : null;
    }
    function J(t, n, r) {
      return (
        (t[0] = 2 / n),
        (t[1] = 0),
        (t[2] = 0),
        (t[3] = 0),
        (t[4] = -2 / r),
        (t[5] = 0),
        (t[6] = -1),
        (t[7] = 1),
        (t[8] = 1),
        t
      );
    }
    function tt(t) {
      return (
        "mat3(" +
        t[0] +
        ", " +
        t[1] +
        ", " +
        t[2] +
        ", " +
        t[3] +
        ", " +
        t[4] +
        ", " +
        t[5] +
        ", " +
        t[6] +
        ", " +
        t[7] +
        ", " +
        t[8] +
        ")"
      );
    }
    function nt(t) {
      return Math.hypot(t[0], t[1], t[2], t[3], t[4], t[5], t[6], t[7], t[8]);
    }
    function rt(t, n, r) {
      return (
        (t[0] = n[0] + r[0]),
        (t[1] = n[1] + r[1]),
        (t[2] = n[2] + r[2]),
        (t[3] = n[3] + r[3]),
        (t[4] = n[4] + r[4]),
        (t[5] = n[5] + r[5]),
        (t[6] = n[6] + r[6]),
        (t[7] = n[7] + r[7]),
        (t[8] = n[8] + r[8]),
        t
      );
    }
    function et(t, n, r) {
      return (
        (t[0] = n[0] - r[0]),
        (t[1] = n[1] - r[1]),
        (t[2] = n[2] - r[2]),
        (t[3] = n[3] - r[3]),
        (t[4] = n[4] - r[4]),
        (t[5] = n[5] - r[5]),
        (t[6] = n[6] - r[6]),
        (t[7] = n[7] - r[7]),
        (t[8] = n[8] - r[8]),
        t
      );
    }
    function at(t, n, r) {
      return (
        (t[0] = n[0] * r),
        (t[1] = n[1] * r),
        (t[2] = n[2] * r),
        (t[3] = n[3] * r),
        (t[4] = n[4] * r),
        (t[5] = n[5] * r),
        (t[6] = n[6] * r),
        (t[7] = n[7] * r),
        (t[8] = n[8] * r),
        t
      );
    }
    function ot(t, n, r, e) {
      return (
        (t[0] = n[0] + r[0] * e),
        (t[1] = n[1] + r[1] * e),
        (t[2] = n[2] + r[2] * e),
        (t[3] = n[3] + r[3] * e),
        (t[4] = n[4] + r[4] * e),
        (t[5] = n[5] + r[5] * e),
        (t[6] = n[6] + r[6] * e),
        (t[7] = n[7] + r[7] * e),
        (t[8] = n[8] + r[8] * e),
        t
      );
    }
    function it(t, n) {
      return (
        t[0] === n[0] &&
        t[1] === n[1] &&
        t[2] === n[2] &&
        t[3] === n[3] &&
        t[4] === n[4] &&
        t[5] === n[5] &&
        t[6] === n[6] &&
        t[7] === n[7] &&
        t[8] === n[8]
      );
    }
    function ut(t, n) {
      var r = t[0],
        e = t[1],
        a = t[2],
        i = t[3],
        u = t[4],
        c = t[5],
        f = t[6],
        l = t[7],
        s = t[8],
        d = n[0],
        h = n[1],
        p = n[2],
        _ = n[3],
        m = n[4],
        b = n[5],
        v = n[6],
        g = n[7],
        M = n[8];
      return (
        Math.abs(r - d) <= o.b * Math.max(1, Math.abs(r), Math.abs(d)) &&
        Math.abs(e - h) <= o.b * Math.max(1, Math.abs(e), Math.abs(h)) &&
        Math.abs(a - p) <= o.b * Math.max(1, Math.abs(a), Math.abs(p)) &&
        Math.abs(i - _) <= o.b * Math.max(1, Math.abs(i), Math.abs(_)) &&
        Math.abs(u - m) <= o.b * Math.max(1, Math.abs(u), Math.abs(m)) &&
        Math.abs(c - b) <= o.b * Math.max(1, Math.abs(c), Math.abs(b)) &&
        Math.abs(f - v) <= o.b * Math.max(1, Math.abs(f), Math.abs(v)) &&
        Math.abs(l - g) <= o.b * Math.max(1, Math.abs(l), Math.abs(g)) &&
        Math.abs(s - M) <= o.b * Math.max(1, Math.abs(s), Math.abs(M))
      );
    }
    var ct = W,
      ft = et,
      lt = r(62),
      st = r(80),
      dt = r(110),
      ht = r(120);
    r.d(n, "a", function () {
      return e;
    }),
      r.d(n, "b", function () {
        return a;
      }),
      r.d(n, "c", function () {
        return lt;
      }),
      r.d(n, "d", function () {
        return st;
      }),
      r.d(n, "e", function () {
        return dt;
      }),
      r.d(n, "f", function () {
        return ht;
      });
  },
  120: function (t, n, r) {
    "use strict";
    r.r(n),
      r.d(n, "create", function () {
        return a;
      }),
      r.d(n, "clone", function () {
        return o;
      }),
      r.d(n, "fromValues", function () {
        return i;
      }),
      r.d(n, "copy", function () {
        return u;
      }),
      r.d(n, "set", function () {
        return c;
      }),
      r.d(n, "add", function () {
        return f;
      }),
      r.d(n, "subtract", function () {
        return l;
      }),
      r.d(n, "multiply", function () {
        return s;
      }),
      r.d(n, "divide", function () {
        return d;
      }),
      r.d(n, "ceil", function () {
        return h;
      }),
      r.d(n, "floor", function () {
        return p;
      }),
      r.d(n, "min", function () {
        return _;
      }),
      r.d(n, "max", function () {
        return m;
      }),
      r.d(n, "round", function () {
        return b;
      }),
      r.d(n, "scale", function () {
        return v;
      }),
      r.d(n, "scaleAndAdd", function () {
        return g;
      }),
      r.d(n, "distance", function () {
        return M;
      }),
      r.d(n, "squaredDistance", function () {
        return y;
      }),
      r.d(n, "length", function () {
        return x;
      }),
      r.d(n, "squaredLength", function () {
        return w;
      }),
      r.d(n, "negate", function () {
        return O;
      }),
      r.d(n, "inverse", function () {
        return C;
      }),
      r.d(n, "normalize", function () {
        return A;
      }),
      r.d(n, "dot", function () {
        return E;
      }),
      r.d(n, "cross", function () {
        return j;
      }),
      r.d(n, "lerp", function () {
        return P;
      }),
      r.d(n, "random", function () {
        return k;
      }),
      r.d(n, "transformMat4", function () {
        return D;
      }),
      r.d(n, "transformQuat", function () {
        return I;
      }),
      r.d(n, "zero", function () {
        return R;
      }),
      r.d(n, "str", function () {
        return q;
      }),
      r.d(n, "exactEquals", function () {
        return T;
      }),
      r.d(n, "equals", function () {
        return L;
      }),
      r.d(n, "sub", function () {
        return U;
      }),
      r.d(n, "mul", function () {
        return B;
      }),
      r.d(n, "div", function () {
        return S;
      }),
      r.d(n, "dist", function () {
        return K;
      }),
      r.d(n, "sqrDist", function () {
        return N;
      }),
      r.d(n, "len", function () {
        return V;
      }),
      r.d(n, "sqrLen", function () {
        return W;
      }),
      r.d(n, "forEach", function () {
        return $;
      });
    var e = r(19);
    function a() {
      var t = new e.a(4);
      return (
        e.a != Float32Array && ((t[0] = 0), (t[1] = 0), (t[2] = 0), (t[3] = 0)),
        t
      );
    }
    function o(t) {
      var n = new e.a(4);
      return (n[0] = t[0]), (n[1] = t[1]), (n[2] = t[2]), (n[3] = t[3]), n;
    }
    function i(t, n, r, a) {
      var o = new e.a(4);
      return (o[0] = t), (o[1] = n), (o[2] = r), (o[3] = a), o;
    }
    function u(t, n) {
      return (t[0] = n[0]), (t[1] = n[1]), (t[2] = n[2]), (t[3] = n[3]), t;
    }
    function c(t, n, r, e, a) {
      return (t[0] = n), (t[1] = r), (t[2] = e), (t[3] = a), t;
    }
    function f(t, n, r) {
      return (
        (t[0] = n[0] + r[0]),
        (t[1] = n[1] + r[1]),
        (t[2] = n[2] + r[2]),
        (t[3] = n[3] + r[3]),
        t
      );
    }
    function l(t, n, r) {
      return (
        (t[0] = n[0] - r[0]),
        (t[1] = n[1] - r[1]),
        (t[2] = n[2] - r[2]),
        (t[3] = n[3] - r[3]),
        t
      );
    }
    function s(t, n, r) {
      return (
        (t[0] = n[0] * r[0]),
        (t[1] = n[1] * r[1]),
        (t[2] = n[2] * r[2]),
        (t[3] = n[3] * r[3]),
        t
      );
    }
    function d(t, n, r) {
      return (
        (t[0] = n[0] / r[0]),
        (t[1] = n[1] / r[1]),
        (t[2] = n[2] / r[2]),
        (t[3] = n[3] / r[3]),
        t
      );
    }
    function h(t, n) {
      return (
        (t[0] = Math.ceil(n[0])),
        (t[1] = Math.ceil(n[1])),
        (t[2] = Math.ceil(n[2])),
        (t[3] = Math.ceil(n[3])),
        t
      );
    }
    function p(t, n) {
      return (
        (t[0] = Math.floor(n[0])),
        (t[1] = Math.floor(n[1])),
        (t[2] = Math.floor(n[2])),
        (t[3] = Math.floor(n[3])),
        t
      );
    }
    function _(t, n, r) {
      return (
        (t[0] = Math.min(n[0], r[0])),
        (t[1] = Math.min(n[1], r[1])),
        (t[2] = Math.min(n[2], r[2])),
        (t[3] = Math.min(n[3], r[3])),
        t
      );
    }
    function m(t, n, r) {
      return (
        (t[0] = Math.max(n[0], r[0])),
        (t[1] = Math.max(n[1], r[1])),
        (t[2] = Math.max(n[2], r[2])),
        (t[3] = Math.max(n[3], r[3])),
        t
      );
    }
    function b(t, n) {
      return (
        (t[0] = Math.round(n[0])),
        (t[1] = Math.round(n[1])),
        (t[2] = Math.round(n[2])),
        (t[3] = Math.round(n[3])),
        t
      );
    }
    function v(t, n, r) {
      return (
        (t[0] = n[0] * r),
        (t[1] = n[1] * r),
        (t[2] = n[2] * r),
        (t[3] = n[3] * r),
        t
      );
    }
    function g(t, n, r, e) {
      return (
        (t[0] = n[0] + r[0] * e),
        (t[1] = n[1] + r[1] * e),
        (t[2] = n[2] + r[2] * e),
        (t[3] = n[3] + r[3] * e),
        t
      );
    }
    function M(t, n) {
      var r = n[0] - t[0],
        e = n[1] - t[1],
        a = n[2] - t[2],
        o = n[3] - t[3];
      return Math.hypot(r, e, a, o);
    }
    function y(t, n) {
      var r = n[0] - t[0],
        e = n[1] - t[1],
        a = n[2] - t[2],
        o = n[3] - t[3];
      return r * r + e * e + a * a + o * o;
    }
    function x(t) {
      var n = t[0],
        r = t[1],
        e = t[2],
        a = t[3];
      return Math.hypot(n, r, e, a);
    }
    function w(t) {
      var n = t[0],
        r = t[1],
        e = t[2],
        a = t[3];
      return n * n + r * r + e * e + a * a;
    }
    function O(t, n) {
      return (t[0] = -n[0]), (t[1] = -n[1]), (t[2] = -n[2]), (t[3] = -n[3]), t;
    }
    function C(t, n) {
      return (
        (t[0] = 1 / n[0]),
        (t[1] = 1 / n[1]),
        (t[2] = 1 / n[2]),
        (t[3] = 1 / n[3]),
        t
      );
    }
    function A(t, n) {
      var r = n[0],
        e = n[1],
        a = n[2],
        o = n[3],
        i = r * r + e * e + a * a + o * o;
      return (
        i > 0 && (i = 1 / Math.sqrt(i)),
        (t[0] = r * i),
        (t[1] = e * i),
        (t[2] = a * i),
        (t[3] = o * i),
        t
      );
    }
    function E(t, n) {
      return t[0] * n[0] + t[1] * n[1] + t[2] * n[2] + t[3] * n[3];
    }
    function j(t, n, r, e) {
      var a = r[0] * e[1] - r[1] * e[0],
        o = r[0] * e[2] - r[2] * e[0],
        i = r[0] * e[3] - r[3] * e[0],
        u = r[1] * e[2] - r[2] * e[1],
        c = r[1] * e[3] - r[3] * e[1],
        f = r[2] * e[3] - r[3] * e[2],
        l = n[0],
        s = n[1],
        d = n[2],
        h = n[3];
      return (
        (t[0] = s * f - d * c + h * u),
        (t[1] = -l * f + d * i - h * o),
        (t[2] = l * c - s * i + h * a),
        (t[3] = -l * u + s * o - d * a),
        t
      );
    }
    function P(t, n, r, e) {
      var a = n[0],
        o = n[1],
        i = n[2],
        u = n[3];
      return (
        (t[0] = a + e * (r[0] - a)),
        (t[1] = o + e * (r[1] - o)),
        (t[2] = i + e * (r[2] - i)),
        (t[3] = u + e * (r[3] - u)),
        t
      );
    }
    function k(t, n) {
      var r, a, o, i, u, c;
      n = n || 1;
      do {
        u = (r = 2 * e.c() - 1) * r + (a = 2 * e.c() - 1) * a;
      } while (u >= 1);
      do {
        c = (o = 2 * e.c() - 1) * o + (i = 2 * e.c() - 1) * i;
      } while (c >= 1);
      var f = Math.sqrt((1 - u) / c);
      return (
        (t[0] = n * r),
        (t[1] = n * a),
        (t[2] = n * o * f),
        (t[3] = n * i * f),
        t
      );
    }
    function D(t, n, r) {
      var e = n[0],
        a = n[1],
        o = n[2],
        i = n[3];
      return (
        (t[0] = r[0] * e + r[4] * a + r[8] * o + r[12] * i),
        (t[1] = r[1] * e + r[5] * a + r[9] * o + r[13] * i),
        (t[2] = r[2] * e + r[6] * a + r[10] * o + r[14] * i),
        (t[3] = r[3] * e + r[7] * a + r[11] * o + r[15] * i),
        t
      );
    }
    function I(t, n, r) {
      var e = n[0],
        a = n[1],
        o = n[2],
        i = r[0],
        u = r[1],
        c = r[2],
        f = r[3],
        l = f * e + u * o - c * a,
        s = f * a + c * e - i * o,
        d = f * o + i * a - u * e,
        h = -i * e - u * a - c * o;
      return (
        (t[0] = l * f + h * -i + s * -c - d * -u),
        (t[1] = s * f + h * -u + d * -i - l * -c),
        (t[2] = d * f + h * -c + l * -u - s * -i),
        (t[3] = n[3]),
        t
      );
    }
    function R(t) {
      return (t[0] = 0), (t[1] = 0), (t[2] = 0), (t[3] = 0), t;
    }
    function q(t) {
      return "vec4(" + t[0] + ", " + t[1] + ", " + t[2] + ", " + t[3] + ")";
    }
    function T(t, n) {
      return t[0] === n[0] && t[1] === n[1] && t[2] === n[2] && t[3] === n[3];
    }
    function L(t, n) {
      var r = t[0],
        a = t[1],
        o = t[2],
        i = t[3],
        u = n[0],
        c = n[1],
        f = n[2],
        l = n[3];
      return (
        Math.abs(r - u) <= e.b * Math.max(1, Math.abs(r), Math.abs(u)) &&
        Math.abs(a - c) <= e.b * Math.max(1, Math.abs(a), Math.abs(c)) &&
        Math.abs(o - f) <= e.b * Math.max(1, Math.abs(o), Math.abs(f)) &&
        Math.abs(i - l) <= e.b * Math.max(1, Math.abs(i), Math.abs(l))
      );
    }
    var U = l,
      B = s,
      S = d,
      K = M,
      N = y,
      V = x,
      W = w,
      $ = (function () {
        var t = a();
        return function (n, r, e, a, o, i) {
          var u, c;
          for (
            r || (r = 4),
              e || (e = 0),
              c = a ? Math.min(a * r + e, n.length) : n.length,
              u = e;
            u < c;
            u += r
          )
            (t[0] = n[u]),
              (t[1] = n[u + 1]),
              (t[2] = n[u + 2]),
              (t[3] = n[u + 3]),
              o(t, t, i),
              (n[u] = t[0]),
              (n[u + 1] = t[1]),
              (n[u + 2] = t[2]),
              (n[u + 3] = t[3]);
          return n;
        };
      })();
  },
  121: function (t, n, r) {
    "use strict";
    n.a = function (t) {
      var n = typeof t;
      return (null !== t && "object" === n) || "function" === n;
    };
  },
  19: function (t, n, r) {
    "use strict";
    r.d(n, "b", function () {
      return e;
    }),
      r.d(n, "a", function () {
        return a;
      }),
      r.d(n, "c", function () {
        return o;
      });
    var e = 1e-6,
      a = "undefined" !== typeof Float32Array ? Float32Array : Array,
      o = Math.random;
    Math.PI;
    Math.hypot ||
      (Math.hypot = function () {
        for (var t = 0, n = arguments.length; n--; )
          t += arguments[n] * arguments[n];
        return Math.sqrt(t);
      });
  },
  2: function (t, n, r) {
    "use strict";
    r.d(n, "c", function () {
      return a;
    }),
      r.d(n, "a", function () {
        return o;
      }),
      r.d(n, "f", function () {
        return i;
      }),
      r.d(n, "b", function () {
        return u;
      }),
      r.d(n, "d", function () {
        return c;
      }),
      r.d(n, "i", function () {
        return f;
      }),
      r.d(n, "e", function () {
        return l;
      }),
      r.d(n, "h", function () {
        return s;
      }),
      r.d(n, "g", function () {
        return d;
      });
    var e = function (t, n) {
      return (e =
        Object.setPrototypeOf ||
        ({ __proto__: [] } instanceof Array &&
          function (t, n) {
            t.__proto__ = n;
          }) ||
        function (t, n) {
          for (var r in n)
            Object.prototype.hasOwnProperty.call(n, r) && (t[r] = n[r]);
        })(t, n);
    };
    function a(t, n) {
      if ("function" !== typeof n && null !== n)
        throw new TypeError(
          "Class extends value " + String(n) + " is not a constructor or null"
        );
      function r() {
        this.constructor = t;
      }
      e(t, n),
        (t.prototype =
          null === n
            ? Object.create(n)
            : ((r.prototype = n.prototype), new r()));
    }
    var o = function () {
      return (o =
        Object.assign ||
        function (t) {
          for (var n, r = 1, e = arguments.length; r < e; r++)
            for (var a in (n = arguments[r]))
              Object.prototype.hasOwnProperty.call(n, a) && (t[a] = n[a]);
          return t;
        }).apply(this, arguments);
    };
    function i(t, n) {
      var r = {};
      for (var e in t)
        Object.prototype.hasOwnProperty.call(t, e) &&
          n.indexOf(e) < 0 &&
          (r[e] = t[e]);
      if (null != t && "function" === typeof Object.getOwnPropertySymbols) {
        var a = 0;
        for (e = Object.getOwnPropertySymbols(t); a < e.length; a++)
          n.indexOf(e[a]) < 0 &&
            Object.prototype.propertyIsEnumerable.call(t, e[a]) &&
            (r[e[a]] = t[e[a]]);
      }
      return r;
    }
    function u(t, n, r, e) {
      return new (r || (r = Promise))(function (a, o) {
        function i(t) {
          try {
            c(e.next(t));
          } catch (n) {
            o(n);
          }
        }
        function u(t) {
          try {
            c(e.throw(t));
          } catch (n) {
            o(n);
          }
        }
        function c(t) {
          var n;
          t.done
            ? a(t.value)
            : ((n = t.value),
              n instanceof r
                ? n
                : new r(function (t) {
                    t(n);
                  })).then(i, u);
        }
        c((e = e.apply(t, n || [])).next());
      });
    }
    function c(t, n) {
      var r,
        e,
        a,
        o,
        i = {
          label: 0,
          sent: function () {
            if (1 & a[0]) throw a[1];
            return a[1];
          },
          trys: [],
          ops: [],
        };
      return (
        (o = { next: u(0), throw: u(1), return: u(2) }),
        "function" === typeof Symbol &&
          (o[Symbol.iterator] = function () {
            return this;
          }),
        o
      );
      function u(u) {
        return function (c) {
          return (function (u) {
            if (r) throw new TypeError("Generator is already executing.");
            for (; o && ((o = 0), u[0] && (i = 0)), i; )
              try {
                if (
                  ((r = 1),
                  e &&
                    (a =
                      2 & u[0]
                        ? e.return
                        : u[0]
                        ? e.throw || ((a = e.return) && a.call(e), 0)
                        : e.next) &&
                    !(a = a.call(e, u[1])).done)
                )
                  return a;
                switch (((e = 0), a && (u = [2 & u[0], a.value]), u[0])) {
                  case 0:
                  case 1:
                    a = u;
                    break;
                  case 4:
                    return i.label++, { value: u[1], done: !1 };
                  case 5:
                    i.label++, (e = u[1]), (u = [0]);
                    continue;
                  case 7:
                    (u = i.ops.pop()), i.trys.pop();
                    continue;
                  default:
                    if (
                      !(a = (a = i.trys).length > 0 && a[a.length - 1]) &&
                      (6 === u[0] || 2 === u[0])
                    ) {
                      i = 0;
                      continue;
                    }
                    if (3 === u[0] && (!a || (u[1] > a[0] && u[1] < a[3]))) {
                      i.label = u[1];
                      break;
                    }
                    if (6 === u[0] && i.label < a[1]) {
                      (i.label = a[1]), (a = u);
                      break;
                    }
                    if (a && i.label < a[2]) {
                      (i.label = a[2]), i.ops.push(u);
                      break;
                    }
                    a[2] && i.ops.pop(), i.trys.pop();
                    continue;
                }
                u = n.call(t, i);
              } catch (c) {
                (u = [6, c]), (e = 0);
              } finally {
                r = a = 0;
              }
            if (5 & u[0]) throw u[1];
            return { value: u[0] ? u[1] : void 0, done: !0 };
          })([u, c]);
        };
      }
    }
    Object.create;
    function f(t) {
      var n = "function" === typeof Symbol && Symbol.iterator,
        r = n && t[n],
        e = 0;
      if (r) return r.call(t);
      if (t && "number" === typeof t.length)
        return {
          next: function () {
            return (
              t && e >= t.length && (t = void 0),
              { value: t && t[e++], done: !t }
            );
          },
        };
      throw new TypeError(
        n ? "Object is not iterable." : "Symbol.iterator is not defined."
      );
    }
    function l(t, n) {
      var r = "function" === typeof Symbol && t[Symbol.iterator];
      if (!r) return t;
      var e,
        a,
        o = r.call(t),
        i = [];
      try {
        for (; (void 0 === n || n-- > 0) && !(e = o.next()).done; )
          i.push(e.value);
      } catch (u) {
        a = { error: u };
      } finally {
        try {
          e && !e.done && (r = o.return) && r.call(o);
        } finally {
          if (a) throw a.error;
        }
      }
      return i;
    }
    function s() {
      for (var t = 0, n = 0, r = arguments.length; n < r; n++)
        t += arguments[n].length;
      var e = Array(t),
        a = 0;
      for (n = 0; n < r; n++)
        for (var o = arguments[n], i = 0, u = o.length; i < u; i++, a++)
          e[a] = o[i];
      return e;
    }
    function d(t, n, r) {
      if (r || 2 === arguments.length)
        for (var e, a = 0, o = n.length; a < o; a++)
          (!e && a in n) ||
            (e || (e = Array.prototype.slice.call(n, 0, a)), (e[a] = n[a]));
      return t.concat(e || Array.prototype.slice.call(n));
    }
    Object.create;
    "function" === typeof SuppressedError && SuppressedError;
  },
  206: function (t, n, r) {
    "use strict";
    var e = r(26),
      a = r(55),
      o = Object.prototype.hasOwnProperty;
    n.a = function (t, n) {
      if (!n || !Object(e.a)(t)) return {};
      for (
        var r,
          i = {},
          u = Object(a.a)(n)
            ? n
            : function (t) {
                return t[n];
              },
          c = 0;
        c < t.length;
        c++
      ) {
        var f = t[c];
        (r = u(f)), o.call(i, r) ? i[r].push(f) : (i[r] = [f]);
      }
      return i;
    };
  },
  21: function (module, __webpack_exports__, __webpack_require__) {
    "use strict";
    __webpack_require__.d(__webpack_exports__, "n", function () {
      return loadJS;
    }),
      __webpack_require__.d(__webpack_exports__, "o", function () {
        return replaceAll;
      }),
      __webpack_require__.d(__webpack_exports__, "j", function () {
        return getGlobalConfig;
      }),
      __webpack_require__.d(__webpack_exports__, "g", function () {
        return getConfig;
      }),
      __webpack_require__.d(__webpack_exports__, "p", function () {
        return setAttrByLabel;
      }),
      __webpack_require__.d(__webpack_exports__, "h", function () {
        return getDataAndKeys;
      }),
      __webpack_require__.d(__webpack_exports__, "m", function () {
        return getRepeaterRowsAndColumns;
      }),
      __webpack_require__.d(__webpack_exports__, "q", function () {
        return setGlobalVariableValue;
      }),
      __webpack_require__.d(__webpack_exports__, "k", function () {
        return getGlobalVariableValue;
      }),
      __webpack_require__.d(__webpack_exports__, "e", function () {
        return formatValue;
      }),
      __webpack_require__.d(__webpack_exports__, "d", function () {
        return ensureArray;
      }),
      __webpack_require__.d(__webpack_exports__, "a", function () {
        return axGet;
      }),
      __webpack_require__.d(__webpack_exports__, "b", function () {
        return chartConfigToRepeaterConfig;
      }),
      __webpack_require__.d(__webpack_exports__, "l", function () {
        return getKeysByData;
      }),
      __webpack_require__.d(__webpack_exports__, "f", function () {
        return getCache;
      }),
      __webpack_require__.d(__webpack_exports__, "c", function () {
        return convertSVGToCanvas;
      }),
      __webpack_require__.d(__webpack_exports__, "i", function () {
        return getEditorData;
      });
    var scriptjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(52),
      scriptjs__WEBPACK_IMPORTED_MODULE_0___default = __webpack_require__.n(
        scriptjs__WEBPACK_IMPORTED_MODULE_0__
      ),
      _antv_util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);
    const $ = window.$,
      loadJS = (t) =>
        new Promise((n) =>
          scriptjs__WEBPACK_IMPORTED_MODULE_0___default.a.get(t, () => {
            n(!0);
          })
        ),
      replaceAll = (t, n, r) => (
        (n = n.replace(/([.*+?^=!:${}()|\[\]\/\\])/g, "\\$1")),
        t.replace(new RegExp(n, "g"), r)
      ),
      bool = (t) =>
        !(
          "false" === t ||
          0 === t ||
          null === t ||
          void 0 === t ||
          "" === t ||
          !1 === t
        ),
      getGlobalConfig = () => {
        if (window.acpGlobalConfig) return window.acpGlobalConfig;
        let t = {};
        return (
          window.$axure.internal((n) => {
            n.pageData.variables.map((r) => {
              (r = r.replaceAll("_", ".")),
                (t[r] = formatValue(
                  n.globalVariableProvider.getVariableValue(r)
                ));
            });
          }),
          (window.acpGlobalConfig = t),
          t
        );
      },
      getRepeater = (t) => {
        let n;
        return (
          window
            .$axure((t) => "repeater" === t.type)
            .each((r, e) => {
              t === e && (n = r);
            }),
          n
        );
      },
      getConfig = function (t) {
        let n =
            arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
          r =
            arguments.length > 2 && void 0 !== arguments[2]
              ? arguments[2]
              : null;
        try {
          let e = {},
            a = r || getRepeaterRowsAndColumns(t).rows,
            o = n;
          return (
            r
              ? a.map((t) => {
                  if (t.item) {
                    let n = o[t.item] || t.item;
                    e[n] = t.value;
                  }
                })
              : a.map((t) => {
                  if (t.item) {
                    let n =
                      o[t.item.text.trim().toLowerCase()] || t.item.text.trim();
                    if (t.value) {
                      let r;
                      (r =
                        "image" === t.value.type
                          ? "./" + t.value.img.s0
                          : t.value.text.trim()),
                        (e[n] = "code" !== n ? formatValue(r) : r);
                    }
                  }
                }),
            e
          );
        } catch (e) {
          return (
            console.error(e),
            console.log("Error\uff1aCan not get config by  " + t),
            null
          );
        }
      },
      getAnnotations = (t, n) => {
        try {
          let r = [],
            { rows: e, columns: a } = getRepeaterRowsAndColumns(t),
            o = n;
          return (
            a.map((t, n) => {
              if (n > 0) {
                let n = {};
                e.map((r) => {
                  if (r.option) {
                    let e =
                        o[r.option.text.trim().toLowerCase()] ||
                        r.option.text.trim(),
                      a = r[t].text.trim();
                    a && ((a = formatValue(a)), setAttrByLabel(n, e, a));
                  }
                }),
                  r.push(n);
              }
            }),
            r
          );
        } catch (r) {
          return (
            console.error(r),
            console.error("Error\uff1aCan not get annotations by  " + t),
            null
          );
        }
      },
      isIE = () => !(!window.ActiveXObject && !("ActiveXObject" in window)),
      setAttrByLabel = (t, n, r) => {
        let e = [];
        (e = n.split(".")),
          e.forEach((n, a, o) => {
            if (n.endsWith("]")) {
              let o = /\[(^[1-9]\d*|0)\]$/g.exec(n);
              if (o) {
                n = n.replace(o[0], "");
                let i = Number(o[1]);
                (t[n] && t[n].constructor === Array) || (t[n] = []),
                  a == e.length - 1
                    ? (t[n][i] = r)
                    : ((t[n][i] && t[n][i].constructor === Object) ||
                        (t[n][i] = {}),
                      (t = t[n][i]));
              }
            } else
              a == e.length - 1
                ? (t[n] = r)
                : ((t[n] && t[n].constructor === Object) || (t[n] = {}),
                  (t = t[n]));
          });
      },
      getDataAndKeys = (t) => {
        let n = [],
          r = getRepeaterRowsAndColumns(t),
          e = r.rows,
          a = r.columns;
        return {
          data: e.map((t, r) => {
            n = Object.getOwnPropertyNames(t);
            let e = {};
            return (
              n.map((n, r) => {
                let a = t[n].text || null;
                t[n].img && (a = t[n].img.s0 || a),
                  (e[n] = isNaN(a) || null === a ? a : Number(a)),
                  !r &&
                    isNaN(a) &&
                    (e[n] = e[n].replace(RegExp("{br}", "g"), "\n"));
              }),
              e
            );
          }),
          keys: a,
        };
      },
      getRepeaterRowsAndColumns = function (t, n, r) {
        let e;
        window.$axure.internal(function (t) {
          e = t;
        });
        var a = n;
        void 0 === a
          ? (a = e.repeater.getAllItemIds(t))
          : "object" != typeof a && (a = [a]),
          void 0 === r
            ? (r = getRepeater(t).dataProps)
            : "object" != typeof r && (r = [r]),
          (n = []);
        for (var o = 0, i = a.length; o < i; o++) {
          for (var u = {}, c = 0, f = r.length; c < f; c++) {
            var l = r[c].toLowerCase(),
              s = a[o];
            "string" == typeof s &&
              -1 != s.indexOf("-") &&
              (s = e.repeater.getItemIdFromElementId(s));
            var d = e.repeater.getData({}, t, a[o], l, "data");
            "object" === typeof d
              ? (void 0 === (d = e.deepCopy(d)).type && (d.type = "text"),
                (u[l] = d))
              : (u[l] = { type: "text", text: d });
          }
          n.push(u);
        }
        return { columns: r, rows: n };
      },
      setGlobalVariableValue = (t, n) => {
        let r;
        window.$axure.internal(function (t) {
          r = t;
        }),
          r.globalVariableProvider.setVariableValue(t, n, !1);
      },
      getGlobalVariableValue = (t, n) => {
        let r;
        return (
          window.$axure.internal(function (t) {
            r = t;
          }),
          r.globalVariableProvider.getVariableValue(t, n, !1)
        );
      },
      formatNumber = (t) => (!isNaN(t) && t ? Number(t) : t),
      formatValue = (str) => {
        if ("" === str || void 0 === str || null === str) return;
        if ("string" !== typeof str) return str;
        if (!isNaN(str)) return Number(str);
        if (-1 !== ["true", "false"].indexOf(str)) return "true" === str;
        try {
          return JSON.parse(str);
        } catch (error) {}
        if (0 === str.indexOf("function("))
          return eval("(false || " + str + ")");
        let reg = /\[(.+?)\]/g,
          res = reg.exec(str);
        return res
          ? res[1]
              .split(",")
              .map((t) =>
                isNaN(t) ? t.replaceAll("'", "").replaceAll('"', "") : Number(t)
              )
          : -1 !== str.indexOf("|")
          ? str.split("|").map((t) => (isNaN(t) ? t : Number(t)))
          : -1 !== str.indexOf(",") && -1 === str.indexOf("rgb")
          ? str.split(",").map((t) => (isNaN(t) ? t : Number(t)))
          : str;
      },
      ensureArray = (t) => (Array.isArray(t) ? t : void 0 === t ? [] : [t]),
      axGet = (t) =>
        new Promise(function (n, r) {
          window.$.ajax({
            type: "GET",
            url: t,
            success: function (t) {
              n(t);
            },
            error: function (t, n) {
              r(n);
            },
          });
        });
    function chartConfigToRepeaterConfig(t) {
      let n = {};
      return (
        (function t(r, e) {
          for (let a in r) {
            let o = r[a],
              i = e ? "".concat(e, ".").concat(a) : a;
            "object" !== typeof o || Array.isArray(o) ? (n[i] = o) : t(o, i);
          }
        })(t, ""),
        n
      );
    }
    const getKeysByData = (t) =>
        Array.isArray(t)
          ? Object.keys(t[0])
          : t.children
          ? Object.keys(
              (null === t || void 0 === t ? void 0 : t.children[0]) || {}
            )
          : [],
      getCache = (t) => {
        let n = t + "=",
          r = decodeURIComponent(document.cookie).split(";");
        for (let a = 0; a < r.length; a++) {
          let t = r[a];
          for (; " " === t.charAt(0); ) t = t.substring(1);
          if (0 === t.indexOf(n)) {
            let r = t.substring(n.length, t.length);
            try {
              return JSON.parse(r);
            } catch (e) {
              return r;
            }
          }
        }
        return "";
      },
      convertSVGToCanvas = (t, n, r) => {
        const e = new Blob([t], { type: "image/svg+xml" }),
          a = URL.createObjectURL(e),
          o = document.createElement("canvas");
        (o.width = n), (o.height = r);
        const i = new Image();
        return (
          (i.crossorigin = "anonymous"),
          i.setAttribute("crossorigin", "anonymous"),
          (i.src = a),
          new Promise((t, e) => {
            (i.onload = () => {
              URL.revokeObjectURL(a);
              const e = o.getContext("2d");
              (e.fillStyle = "rgba(255, 255, 255, 0)"),
                e.fillRect(0, 0, n, r),
                e.drawImage(i, 0, 0, n, r),
                t(o);
            }),
              (i.onerror = (n) => {
                URL.revokeObjectURL(a), console.warn(n), t(null);
              });
          })
        );
      },
      getEditorData = async function (t, n) {
        var r, e, a, o;
        let i =
          arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : "";
        const u = window.$;
        let c = u(t).find("img#".concat(t.id, "_img")).attr("src") || "",
          f = null,
          l = !1;
        if (c.endsWith(".svg") && !window.location.href.startsWith("file://"))
          try {
            let t = await axGet(c),
              r = JSON.parse(
                u(t).find("svg").attr("AxData") ||
                  u(t).find("#config").text() ||
                  "{}"
              );
            var s;
            if (n.axhubEditorConfig)
              ((null === (s = n.axhubEditorConfig) || void 0 === s
                ? void 0
                : s.time) || 0) <
                ((null === r || void 0 === r ? void 0 : r.time) || 0) &&
                (n.axhubEditorConfig = r);
            else n.axhubEditorConfig = r;
          } catch (b) {
            console.error(b);
          }
        if (i) {
          let t = getGlobalConfig();
          var d, h, p, _;
          if (t[i])
            if (
              ((null === (d = n.axhubEditorConfig) || void 0 === d
                ? void 0
                : d.time) || 0) <
              ((null === (h = t[i]) || void 0 === h ? void 0 : h.time) || 0)
            )
              n.axhubEditorConfig = Object(
                _antv_util__WEBPACK_IMPORTED_MODULE_1__.a
              )(
                {},
                (null === (p = n) || void 0 === p
                  ? void 0
                  : p.axhubEditorConfig) || {},
                t[i] || {}
              );
            else
              n.axhubEditorConfig = Object(
                _antv_util__WEBPACK_IMPORTED_MODULE_1__.a
              )(
                {},
                t[i] || {},
                (null === (_ = n) || void 0 === _
                  ? void 0
                  : _.axhubEditorConfig) || {}
              );
        }
        if (n.axhubEditorConfig) {
          var m;
          switch (n.configSource) {
            case "repeater":
              break;
            case "editor":
              n =
                (null === (r = n.axhubEditorConfig) || void 0 === r
                  ? void 0
                  : r.config) || {};
              break;
            default:
              n = Object(_antv_util__WEBPACK_IMPORTED_MODULE_1__.a)(
                n,
                (null === (e = n.axhubEditorConfig) || void 0 === e
                  ? void 0
                  : e.config) || {}
              );
          }
          switch (n.dataSource) {
            case "repeater":
              break;
            case "editor":
              f = (null === (a = n.axhubEditorConfig) || void 0 === a
                ? void 0
                : a.data) || { data: [], keys: [] };
              break;
            default:
              f =
                (null === (o = n.axhubEditorConfig) || void 0 === o
                  ? void 0
                  : o.data) || f;
          }
          (l = window
            .atob(
              (null === (m = n.axhubEditorConfig) || void 0 === m
                ? void 0
                : m.u) || ""
            )
            .endsWith("b1")),
            delete n.axhubEditorConfig;
        }
        return { config: n, data: f, isEnt: l };
      };
  },
  26: function (t, n, r) {
    "use strict";
    var e = r(29);
    n.a = function (t) {
      return Array.isArray ? Array.isArray(t) : Object(e.a)(t, "Array");
    };
  },
  29: function (t, n, r) {
    "use strict";
    var e = {}.toString;
    n.a = function (t, n) {
      return e.call(t) === "[object " + n + "]";
    };
  },
  31: function (t, n) {
    var r = [],
      e = [];
    function a(t, n) {
      if (((n = n || {}), void 0 === t))
        throw new Error(
          "insert-css: You need to provide a CSS string. Usage: insertCss(cssString[, options])."
        );
      var a,
        o = !0 === n.prepend ? "prepend" : "append",
        i =
          void 0 !== n.container ? n.container : document.querySelector("head"),
        u = r.indexOf(i);
      return (
        -1 === u && ((u = r.push(i) - 1), (e[u] = {})),
        void 0 !== e[u] && void 0 !== e[u][o]
          ? (a = e[u][o])
          : ((a = e[u][o] =
              (function () {
                var t = document.createElement("style");
                return t.setAttribute("type", "text/css"), t;
              })()),
            "prepend" === o
              ? i.insertBefore(a, i.childNodes[0])
              : i.appendChild(a)),
        65279 === t.charCodeAt(0) && (t = t.substr(1, t.length)),
        a.styleSheet ? (a.styleSheet.cssText += t) : (a.textContent += t),
        a
      );
    }
    (t.exports = a), (t.exports.insertCss = a);
  },
  38: function (t, n, r) {
    "use strict";
    var e = r(49),
      a = r(29);
    n.a = function (t) {
      if (!Object(e.a)(t) || !Object(a.a)(t, "Object")) return !1;
      if (null === Object.getPrototypeOf(t)) return !0;
      for (var n = t; null !== Object.getPrototypeOf(n); )
        n = Object.getPrototypeOf(n);
      return Object.getPrototypeOf(t) === n;
    };
  },
  39: function (t, n, r) {
    "use strict";
    var e = r(26),
      a = r(38);
    function o(t, n) {
      if (Object.hasOwn) return Object.hasOwn(t, n);
      if (null == t)
        throw new TypeError("Cannot convert undefined or null to object");
      return Object.prototype.hasOwnProperty.call(Object(t), n);
    }
    function i(t, n, r, u) {
      for (var c in ((r = r || 0), (u = u || 5), n))
        if (o(n, c)) {
          var f = n[c];
          null !== f && Object(a.a)(f)
            ? (Object(a.a)(t[c]) || (t[c] = {}),
              r < u ? i(t[c], f, r + 1, u) : (t[c] = n[c]))
            : Object(e.a)(f)
            ? ((t[c] = []), (t[c] = t[c].concat(f)))
            : void 0 !== f && (t[c] = f);
        }
    }
    n.a = function (t) {
      for (var n = [], r = 1; r < arguments.length; r++)
        n[r - 1] = arguments[r];
      for (var e = 0; e < n.length; e += 1) i(t, n[e]);
      return t;
    };
  },
  49: function (t, n, r) {
    "use strict";
    n.a = function (t) {
      return "object" === typeof t && null !== t;
    };
  },
  52: function (t, n, r) {
    var e, a, o;
    (o = function () {
      var t,
        n,
        r = document,
        e = r.getElementsByTagName("head")[0],
        a = {},
        o = {},
        i = {},
        u = {};
      function c(t, n) {
        for (var r = 0, e = t.length; r < e; ++r) if (!n(t[r])) return !1;
        return 1;
      }
      function f(t, n) {
        c(t, function (t) {
          return n(t), 1;
        });
      }
      function l(n, r, e) {
        n = n.push ? n : [n];
        var d = r && r.call,
          h = d ? r : e,
          p = d ? n.join("") : r,
          _ = n.length;
        function m(t) {
          return t.call ? t() : a[t];
        }
        function b() {
          if (!--_)
            for (var t in ((a[p] = 1), h && h(), i))
              c(t.split("|"), m) && !f(i[t], m) && (i[t] = []);
        }
        return (
          setTimeout(function () {
            f(n, function n(r, e) {
              return null === r
                ? b()
                : (e ||
                    /^https?:\/\//.test(r) ||
                    !t ||
                    (r = -1 === r.indexOf(".js") ? t + r + ".js" : t + r),
                  u[r]
                    ? (p && (o[p] = 1),
                      2 == u[r]
                        ? b()
                        : setTimeout(function () {
                            n(r, !0);
                          }, 0))
                    : ((u[r] = 1), p && (o[p] = 1), void s(r, b)));
            });
          }, 0),
          l
        );
      }
      function s(t, a) {
        var o,
          i = r.createElement("script");
        (i.onload =
          i.onerror =
          i.onreadystatechange =
            function () {
              (i.readyState && !/^c|loade/.test(i.readyState)) ||
                o ||
                ((i.onload = i.onreadystatechange = null),
                (o = 1),
                (u[t] = 2),
                a());
            }),
          (i.async = 1),
          (i.src = n ? t + (-1 === t.indexOf("?") ? "?" : "&") + n : t),
          e.insertBefore(i, e.lastChild);
      }
      return (
        (l.get = s),
        (l.order = function (t, n, r) {
          !(function e(a) {
            (a = t.shift()), t.length ? l(a, e) : l(a, n, r);
          })();
        }),
        (l.path = function (n) {
          t = n;
        }),
        (l.urlArgs = function (t) {
          n = t;
        }),
        (l.ready = function (t, n, r) {
          t = t.push ? t : [t];
          var e,
            o = [];
          return (
            !f(t, function (t) {
              a[t] || o.push(t);
            }) &&
            c(t, function (t) {
              return a[t];
            })
              ? n()
              : ((e = t.join("|")),
                (i[e] = i[e] || []),
                i[e].push(n),
                r && r(o)),
            l
          );
        }),
        (l.done = function (t) {
          l([null], t);
        }),
        l
      );
    }),
      t.exports
        ? (t.exports = o())
        : void 0 ===
            (a = "function" === typeof (e = o) ? e.call(n, r, n, t) : e) ||
          (t.exports = a);
  },
  55: function (t, n, r) {
    "use strict";
    n.a = function (t) {
      return "function" === typeof t;
    };
  },
  611: function (module, __webpack_exports__, __webpack_require__) {
    "use strict";
    __webpack_require__.d(__webpack_exports__, "a", function () {
      return generateAntvG2V4;
    }),
      __webpack_require__.d(__webpack_exports__, "b", function () {
        return generateAntvG2V5;
      });
    var _Common__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(21),
      _common__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(93),
      _antv_util__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(39);
    const $ = window.$,
      formateCode = (t, n) => {
        let r = t;
        return (
          (r = r.replace("import DataSet from '@antv/data-set';", "")),
          (r = r.replace("import G2 from '@antv/g2';", "")),
          (r = r.replace("from '@antv/g2'", "= G2")),
          (r = r.replace("import {", "const {")),
          (r = r.replaceAll("'container'", "'" + n + "'")),
          r
        );
      },
      generateAntvG2V4 = async (item) => {
        let config = await Object(_common__WEBPACK_IMPORTED_MODULE_1__.a)(item),
          container = window.$(item),
          version = config.version || "4.1.46";
        if (
          (await Object(_Common__WEBPACK_IMPORTED_MODULE_0__.n)(
            "https://lf6-cdn-tos.bytecdntp.com/cdn/expire-1-y/antv-g2/" +
              version +
              "/g2.min.js"
          ),
          await Object(_Common__WEBPACK_IMPORTED_MODULE_0__.n)(
            "https://unpkg.com/@antv/data-set"
          ),
          config.code)
        ) {
          container.html("");
          let evalCode = formateCode(config.code, item.id);
          try {
            eval(evalCode);
          } catch (error) {
            console.error(error);
          }
        }
        -1 !== window.location.host.indexOf("127.0.0.1") &&
          $(item).click(async (e) => {
            if (e.altKey) {
              window.openAxhubEditor ||
                (await Object(_Common__WEBPACK_IMPORTED_MODULE_0__.n)(
                  config.AxhubEditorUrl ||
                    "https://gitee.com/sprain_zero/axure-charts/blob/main/charts/editor-v1.5.js"
                ));
              const getAttributesConfig = () => ({
                config: {
                  type: "collapse",
                  children: [
                    {
                      type: "collapse-panel",
                      displayName: "G2 \u4ee3\u7801",
                      attributeId: "baseConfig",
                      children: [
                        {
                          type: "custom-text-area",
                          attributeId: "code",
                          initialValue: config.code,
                        },
                        {
                          type: "text",
                          textType: "link",
                          displayName: "\u53ef\u590d\u5236\u56fe\u8868",
                          attributeId: "link1",
                          link: "https://g2-v4.antv.vision/zh/examples/",
                          initialValue: "\u524d\u5f80\u83b7\u53d6",
                        },
                      ],
                    },
                  ],
                },
              });
              window.openAxhubEditor({
                element: {
                  right: ["g2", "g3", "g4", "b1", "u1"],
                  lib: "loaders",
                  container: item,
                },
                attributesConfig: getAttributesConfig(),
                onConfigChange: (newConfig) => {
                  let key = Object.keys(newConfig)[0];
                  "code" === key &&
                    (newConfig[key] = Object(
                      _common__WEBPACK_IMPORTED_MODULE_1__.b
                    )(newConfig[key])),
                    Object(_antv_util__WEBPACK_IMPORTED_MODULE_2__.a)(
                      config,
                      newConfig
                    ),
                    container.html("");
                  let evalCode = formateCode(config.code, item.id);
                  return eval(evalCode), getAttributesConfig();
                },
                onAIChange: (res) => {
                  (config.code = res), container.html("");
                  let evalCode = formateCode(config.code, item.id);
                  return eval(evalCode), getAttributesConfig();
                },
                getConfig: () => config,
                getPrompt: () => ({
                  system:
                    "\u7ed9\u5b9a\u4e00\u4e2aAntv G2 V4 \u7248\u672c\u56fe\u8868\u7684\u9879\u76ee\u4ee3\u7801\u548c\u8981\u6c42\uff0c\u4f60\u9700\u8981\u6839\u636e\u8981\u6c42\u4fee\u6539\u4ee3\u7801\u5e76\u8fd4\u56de\uff0c\u4e0d\u8981\u4efb\u4f55\u6ce8\u91ca\u548c\u63cf\u8ff0\n\u4f8b\u5b50\uff1a\n\u4ee3\u7801\uff1alet option={a: 1, b: 2}\n\u8981\u6c42\uff1a\u5c06 b \u4fee\u6539\u4e3a 4\n\u8fd4\u56de\u503c\uff1alet option={a: 1, b: 4}\n",
                  code: config.code,
                }),
                getPng: () => {
                  const t = $(item).find("canvas")[0];
                  return {
                    width: $(item).width(),
                    height: $(item).height(),
                    base64: t.toDataURL("image/png"),
                  };
                },
              });
            }
          });
      },
      generateAntvG2V5 = async (item) => {
        let config = await Object(_common__WEBPACK_IMPORTED_MODULE_1__.a)(item),
          container = window.$(item);
        if (
          (await Object(_Common__WEBPACK_IMPORTED_MODULE_0__.n)(
            "https://unpkg.com/@antv/g2@next/dist/g2.min.js"
          ),
          config.code)
        ) {
          container.html("");
          let evalCode = formateCode(config.code, item.id);
          try {
            eval(evalCode);
          } catch (error) {
            console.error(error);
          }
        }
        -1 !== window.location.host.indexOf("127.0.0.1") &&
          $(item).click(async (e) => {
            if (e.altKey) {
              window.openAxhubEditor ||
                (await Object(_Common__WEBPACK_IMPORTED_MODULE_0__.n)(
                  config.AxhubEditorUrl ||
                    "https://gitee.com/sprain_zero/axure-charts/blob/main/charts/editor-v1.5.js"
                ));
              const getAttributesConfig = () => ({
                config: {
                  type: "collapse",
                  children: [
                    {
                      type: "collapse-panel",
                      displayName: "G2 \u4ee3\u7801",
                      attributeId: "baseConfig",
                      children: [
                        {
                          type: "custom-text-area",
                          attributeId: "code",
                          initialValue: config.code,
                        },
                        {
                          type: "text",
                          textType: "link",
                          displayName: "\u53ef\u590d\u5236\u56fe\u8868",
                          attributeId: "link1",
                          link: "https://g2.antv.antgroup.com/examples/",
                          initialValue: "\u524d\u5f80\u83b7\u53d6",
                        },
                      ],
                    },
                  ],
                },
              });
              window.openAxhubEditor({
                element: {
                  right: ["g2", "g3", "g4", "b1", "u1"],
                  lib: "loaders",
                  container: item,
                },
                attributesConfig: getAttributesConfig(),
                onConfigChange: (newConfig) => {
                  let key = Object.keys(newConfig)[0];
                  "code" === key &&
                    (newConfig[key] = Object(
                      _common__WEBPACK_IMPORTED_MODULE_1__.b
                    )(newConfig[key])),
                    Object(_antv_util__WEBPACK_IMPORTED_MODULE_2__.a)(
                      config,
                      newConfig
                    ),
                    container.html("");
                  let evalCode = formateCode(config.code, item.id);
                  return eval(evalCode), getAttributesConfig();
                },
                getConfig: () => config,
                getPng: () => {
                  const t = $(item).find("canvas")[0];
                  return {
                    width: $(item).width(),
                    height: $(item).height(),
                    base64: t.toDataURL("image/png"),
                  };
                },
              });
            }
          });
      };
  },
  62: function (t, n, r) {
    "use strict";
    r.r(n),
      r.d(n, "create", function () {
        return a;
      }),
      r.d(n, "clone", function () {
        return o;
      }),
      r.d(n, "copy", function () {
        return i;
      }),
      r.d(n, "fromValues", function () {
        return u;
      }),
      r.d(n, "set", function () {
        return c;
      }),
      r.d(n, "identity", function () {
        return f;
      }),
      r.d(n, "transpose", function () {
        return l;
      }),
      r.d(n, "invert", function () {
        return s;
      }),
      r.d(n, "adjoint", function () {
        return d;
      }),
      r.d(n, "determinant", function () {
        return h;
      }),
      r.d(n, "multiply", function () {
        return p;
      }),
      r.d(n, "translate", function () {
        return _;
      }),
      r.d(n, "scale", function () {
        return m;
      }),
      r.d(n, "rotate", function () {
        return b;
      }),
      r.d(n, "rotateX", function () {
        return v;
      }),
      r.d(n, "rotateY", function () {
        return g;
      }),
      r.d(n, "rotateZ", function () {
        return M;
      }),
      r.d(n, "fromTranslation", function () {
        return y;
      }),
      r.d(n, "fromScaling", function () {
        return x;
      }),
      r.d(n, "fromRotation", function () {
        return w;
      }),
      r.d(n, "fromXRotation", function () {
        return O;
      }),
      r.d(n, "fromYRotation", function () {
        return C;
      }),
      r.d(n, "fromZRotation", function () {
        return A;
      }),
      r.d(n, "fromRotationTranslation", function () {
        return E;
      }),
      r.d(n, "fromQuat2", function () {
        return j;
      }),
      r.d(n, "getTranslation", function () {
        return P;
      }),
      r.d(n, "getScaling", function () {
        return k;
      }),
      r.d(n, "getRotation", function () {
        return D;
      }),
      r.d(n, "fromRotationTranslationScale", function () {
        return I;
      }),
      r.d(n, "fromRotationTranslationScaleOrigin", function () {
        return R;
      }),
      r.d(n, "fromQuat", function () {
        return q;
      }),
      r.d(n, "frustum", function () {
        return T;
      }),
      r.d(n, "perspectiveNO", function () {
        return L;
      }),
      r.d(n, "perspective", function () {
        return U;
      }),
      r.d(n, "perspectiveZO", function () {
        return B;
      }),
      r.d(n, "perspectiveFromFieldOfView", function () {
        return S;
      }),
      r.d(n, "orthoNO", function () {
        return K;
      }),
      r.d(n, "ortho", function () {
        return N;
      }),
      r.d(n, "orthoZO", function () {
        return V;
      }),
      r.d(n, "lookAt", function () {
        return W;
      }),
      r.d(n, "targetTo", function () {
        return $;
      }),
      r.d(n, "str", function () {
        return F;
      }),
      r.d(n, "frob", function () {
        return G;
      }),
      r.d(n, "add", function () {
        return z;
      }),
      r.d(n, "subtract", function () {
        return H;
      }),
      r.d(n, "multiplyScalar", function () {
        return Q;
      }),
      r.d(n, "multiplyScalarAndAdd", function () {
        return X;
      }),
      r.d(n, "exactEquals", function () {
        return Z;
      }),
      r.d(n, "equals", function () {
        return Y;
      }),
      r.d(n, "mul", function () {
        return J;
      }),
      r.d(n, "sub", function () {
        return tt;
      });
    var e = r(19);
    function a() {
      var t = new e.a(16);
      return (
        e.a != Float32Array &&
          ((t[1] = 0),
          (t[2] = 0),
          (t[3] = 0),
          (t[4] = 0),
          (t[6] = 0),
          (t[7] = 0),
          (t[8] = 0),
          (t[9] = 0),
          (t[11] = 0),
          (t[12] = 0),
          (t[13] = 0),
          (t[14] = 0)),
        (t[0] = 1),
        (t[5] = 1),
        (t[10] = 1),
        (t[15] = 1),
        t
      );
    }
    function o(t) {
      var n = new e.a(16);
      return (
        (n[0] = t[0]),
        (n[1] = t[1]),
        (n[2] = t[2]),
        (n[3] = t[3]),
        (n[4] = t[4]),
        (n[5] = t[5]),
        (n[6] = t[6]),
        (n[7] = t[7]),
        (n[8] = t[8]),
        (n[9] = t[9]),
        (n[10] = t[10]),
        (n[11] = t[11]),
        (n[12] = t[12]),
        (n[13] = t[13]),
        (n[14] = t[14]),
        (n[15] = t[15]),
        n
      );
    }
    function i(t, n) {
      return (
        (t[0] = n[0]),
        (t[1] = n[1]),
        (t[2] = n[2]),
        (t[3] = n[3]),
        (t[4] = n[4]),
        (t[5] = n[5]),
        (t[6] = n[6]),
        (t[7] = n[7]),
        (t[8] = n[8]),
        (t[9] = n[9]),
        (t[10] = n[10]),
        (t[11] = n[11]),
        (t[12] = n[12]),
        (t[13] = n[13]),
        (t[14] = n[14]),
        (t[15] = n[15]),
        t
      );
    }
    function u(t, n, r, a, o, i, u, c, f, l, s, d, h, p, _, m) {
      var b = new e.a(16);
      return (
        (b[0] = t),
        (b[1] = n),
        (b[2] = r),
        (b[3] = a),
        (b[4] = o),
        (b[5] = i),
        (b[6] = u),
        (b[7] = c),
        (b[8] = f),
        (b[9] = l),
        (b[10] = s),
        (b[11] = d),
        (b[12] = h),
        (b[13] = p),
        (b[14] = _),
        (b[15] = m),
        b
      );
    }
    function c(t, n, r, e, a, o, i, u, c, f, l, s, d, h, p, _, m) {
      return (
        (t[0] = n),
        (t[1] = r),
        (t[2] = e),
        (t[3] = a),
        (t[4] = o),
        (t[5] = i),
        (t[6] = u),
        (t[7] = c),
        (t[8] = f),
        (t[9] = l),
        (t[10] = s),
        (t[11] = d),
        (t[12] = h),
        (t[13] = p),
        (t[14] = _),
        (t[15] = m),
        t
      );
    }
    function f(t) {
      return (
        (t[0] = 1),
        (t[1] = 0),
        (t[2] = 0),
        (t[3] = 0),
        (t[4] = 0),
        (t[5] = 1),
        (t[6] = 0),
        (t[7] = 0),
        (t[8] = 0),
        (t[9] = 0),
        (t[10] = 1),
        (t[11] = 0),
        (t[12] = 0),
        (t[13] = 0),
        (t[14] = 0),
        (t[15] = 1),
        t
      );
    }
    function l(t, n) {
      if (t === n) {
        var r = n[1],
          e = n[2],
          a = n[3],
          o = n[6],
          i = n[7],
          u = n[11];
        (t[1] = n[4]),
          (t[2] = n[8]),
          (t[3] = n[12]),
          (t[4] = r),
          (t[6] = n[9]),
          (t[7] = n[13]),
          (t[8] = e),
          (t[9] = o),
          (t[11] = n[14]),
          (t[12] = a),
          (t[13] = i),
          (t[14] = u);
      } else
        (t[0] = n[0]),
          (t[1] = n[4]),
          (t[2] = n[8]),
          (t[3] = n[12]),
          (t[4] = n[1]),
          (t[5] = n[5]),
          (t[6] = n[9]),
          (t[7] = n[13]),
          (t[8] = n[2]),
          (t[9] = n[6]),
          (t[10] = n[10]),
          (t[11] = n[14]),
          (t[12] = n[3]),
          (t[13] = n[7]),
          (t[14] = n[11]),
          (t[15] = n[15]);
      return t;
    }
    function s(t, n) {
      var r = n[0],
        e = n[1],
        a = n[2],
        o = n[3],
        i = n[4],
        u = n[5],
        c = n[6],
        f = n[7],
        l = n[8],
        s = n[9],
        d = n[10],
        h = n[11],
        p = n[12],
        _ = n[13],
        m = n[14],
        b = n[15],
        v = r * u - e * i,
        g = r * c - a * i,
        M = r * f - o * i,
        y = e * c - a * u,
        x = e * f - o * u,
        w = a * f - o * c,
        O = l * _ - s * p,
        C = l * m - d * p,
        A = l * b - h * p,
        E = s * m - d * _,
        j = s * b - h * _,
        P = d * b - h * m,
        k = v * P - g * j + M * E + y * A - x * C + w * O;
      return k
        ? ((k = 1 / k),
          (t[0] = (u * P - c * j + f * E) * k),
          (t[1] = (a * j - e * P - o * E) * k),
          (t[2] = (_ * w - m * x + b * y) * k),
          (t[3] = (d * x - s * w - h * y) * k),
          (t[4] = (c * A - i * P - f * C) * k),
          (t[5] = (r * P - a * A + o * C) * k),
          (t[6] = (m * M - p * w - b * g) * k),
          (t[7] = (l * w - d * M + h * g) * k),
          (t[8] = (i * j - u * A + f * O) * k),
          (t[9] = (e * A - r * j - o * O) * k),
          (t[10] = (p * x - _ * M + b * v) * k),
          (t[11] = (s * M - l * x - h * v) * k),
          (t[12] = (u * C - i * E - c * O) * k),
          (t[13] = (r * E - e * C + a * O) * k),
          (t[14] = (_ * g - p * y - m * v) * k),
          (t[15] = (l * y - s * g + d * v) * k),
          t)
        : null;
    }
    function d(t, n) {
      var r = n[0],
        e = n[1],
        a = n[2],
        o = n[3],
        i = n[4],
        u = n[5],
        c = n[6],
        f = n[7],
        l = n[8],
        s = n[9],
        d = n[10],
        h = n[11],
        p = n[12],
        _ = n[13],
        m = n[14],
        b = n[15];
      return (
        (t[0] =
          u * (d * b - h * m) - s * (c * b - f * m) + _ * (c * h - f * d)),
        (t[1] = -(
          e * (d * b - h * m) -
          s * (a * b - o * m) +
          _ * (a * h - o * d)
        )),
        (t[2] =
          e * (c * b - f * m) - u * (a * b - o * m) + _ * (a * f - o * c)),
        (t[3] = -(
          e * (c * h - f * d) -
          u * (a * h - o * d) +
          s * (a * f - o * c)
        )),
        (t[4] = -(
          i * (d * b - h * m) -
          l * (c * b - f * m) +
          p * (c * h - f * d)
        )),
        (t[5] =
          r * (d * b - h * m) - l * (a * b - o * m) + p * (a * h - o * d)),
        (t[6] = -(
          r * (c * b - f * m) -
          i * (a * b - o * m) +
          p * (a * f - o * c)
        )),
        (t[7] =
          r * (c * h - f * d) - i * (a * h - o * d) + l * (a * f - o * c)),
        (t[8] =
          i * (s * b - h * _) - l * (u * b - f * _) + p * (u * h - f * s)),
        (t[9] = -(
          r * (s * b - h * _) -
          l * (e * b - o * _) +
          p * (e * h - o * s)
        )),
        (t[10] =
          r * (u * b - f * _) - i * (e * b - o * _) + p * (e * f - o * u)),
        (t[11] = -(
          r * (u * h - f * s) -
          i * (e * h - o * s) +
          l * (e * f - o * u)
        )),
        (t[12] = -(
          i * (s * m - d * _) -
          l * (u * m - c * _) +
          p * (u * d - c * s)
        )),
        (t[13] =
          r * (s * m - d * _) - l * (e * m - a * _) + p * (e * d - a * s)),
        (t[14] = -(
          r * (u * m - c * _) -
          i * (e * m - a * _) +
          p * (e * c - a * u)
        )),
        (t[15] =
          r * (u * d - c * s) - i * (e * d - a * s) + l * (e * c - a * u)),
        t
      );
    }
    function h(t) {
      var n = t[0],
        r = t[1],
        e = t[2],
        a = t[3],
        o = t[4],
        i = t[5],
        u = t[6],
        c = t[7],
        f = t[8],
        l = t[9],
        s = t[10],
        d = t[11],
        h = t[12],
        p = t[13],
        _ = t[14],
        m = t[15];
      return (
        (n * i - r * o) * (s * m - d * _) -
        (n * u - e * o) * (l * m - d * p) +
        (n * c - a * o) * (l * _ - s * p) +
        (r * u - e * i) * (f * m - d * h) -
        (r * c - a * i) * (f * _ - s * h) +
        (e * c - a * u) * (f * p - l * h)
      );
    }
    function p(t, n, r) {
      var e = n[0],
        a = n[1],
        o = n[2],
        i = n[3],
        u = n[4],
        c = n[5],
        f = n[6],
        l = n[7],
        s = n[8],
        d = n[9],
        h = n[10],
        p = n[11],
        _ = n[12],
        m = n[13],
        b = n[14],
        v = n[15],
        g = r[0],
        M = r[1],
        y = r[2],
        x = r[3];
      return (
        (t[0] = g * e + M * u + y * s + x * _),
        (t[1] = g * a + M * c + y * d + x * m),
        (t[2] = g * o + M * f + y * h + x * b),
        (t[3] = g * i + M * l + y * p + x * v),
        (g = r[4]),
        (M = r[5]),
        (y = r[6]),
        (x = r[7]),
        (t[4] = g * e + M * u + y * s + x * _),
        (t[5] = g * a + M * c + y * d + x * m),
        (t[6] = g * o + M * f + y * h + x * b),
        (t[7] = g * i + M * l + y * p + x * v),
        (g = r[8]),
        (M = r[9]),
        (y = r[10]),
        (x = r[11]),
        (t[8] = g * e + M * u + y * s + x * _),
        (t[9] = g * a + M * c + y * d + x * m),
        (t[10] = g * o + M * f + y * h + x * b),
        (t[11] = g * i + M * l + y * p + x * v),
        (g = r[12]),
        (M = r[13]),
        (y = r[14]),
        (x = r[15]),
        (t[12] = g * e + M * u + y * s + x * _),
        (t[13] = g * a + M * c + y * d + x * m),
        (t[14] = g * o + M * f + y * h + x * b),
        (t[15] = g * i + M * l + y * p + x * v),
        t
      );
    }
    function _(t, n, r) {
      var e,
        a,
        o,
        i,
        u,
        c,
        f,
        l,
        s,
        d,
        h,
        p,
        _ = r[0],
        m = r[1],
        b = r[2];
      return (
        n === t
          ? ((t[12] = n[0] * _ + n[4] * m + n[8] * b + n[12]),
            (t[13] = n[1] * _ + n[5] * m + n[9] * b + n[13]),
            (t[14] = n[2] * _ + n[6] * m + n[10] * b + n[14]),
            (t[15] = n[3] * _ + n[7] * m + n[11] * b + n[15]))
          : ((e = n[0]),
            (a = n[1]),
            (o = n[2]),
            (i = n[3]),
            (u = n[4]),
            (c = n[5]),
            (f = n[6]),
            (l = n[7]),
            (s = n[8]),
            (d = n[9]),
            (h = n[10]),
            (p = n[11]),
            (t[0] = e),
            (t[1] = a),
            (t[2] = o),
            (t[3] = i),
            (t[4] = u),
            (t[5] = c),
            (t[6] = f),
            (t[7] = l),
            (t[8] = s),
            (t[9] = d),
            (t[10] = h),
            (t[11] = p),
            (t[12] = e * _ + u * m + s * b + n[12]),
            (t[13] = a * _ + c * m + d * b + n[13]),
            (t[14] = o * _ + f * m + h * b + n[14]),
            (t[15] = i * _ + l * m + p * b + n[15])),
        t
      );
    }
    function m(t, n, r) {
      var e = r[0],
        a = r[1],
        o = r[2];
      return (
        (t[0] = n[0] * e),
        (t[1] = n[1] * e),
        (t[2] = n[2] * e),
        (t[3] = n[3] * e),
        (t[4] = n[4] * a),
        (t[5] = n[5] * a),
        (t[6] = n[6] * a),
        (t[7] = n[7] * a),
        (t[8] = n[8] * o),
        (t[9] = n[9] * o),
        (t[10] = n[10] * o),
        (t[11] = n[11] * o),
        (t[12] = n[12]),
        (t[13] = n[13]),
        (t[14] = n[14]),
        (t[15] = n[15]),
        t
      );
    }
    function b(t, n, r, a) {
      var o,
        i,
        u,
        c,
        f,
        l,
        s,
        d,
        h,
        p,
        _,
        m,
        b,
        v,
        g,
        M,
        y,
        x,
        w,
        O,
        C,
        A,
        E,
        j,
        P = a[0],
        k = a[1],
        D = a[2],
        I = Math.hypot(P, k, D);
      return I < e.b
        ? null
        : ((P *= I = 1 / I),
          (k *= I),
          (D *= I),
          (o = Math.sin(r)),
          (u = 1 - (i = Math.cos(r))),
          (c = n[0]),
          (f = n[1]),
          (l = n[2]),
          (s = n[3]),
          (d = n[4]),
          (h = n[5]),
          (p = n[6]),
          (_ = n[7]),
          (m = n[8]),
          (b = n[9]),
          (v = n[10]),
          (g = n[11]),
          (M = P * P * u + i),
          (y = k * P * u + D * o),
          (x = D * P * u - k * o),
          (w = P * k * u - D * o),
          (O = k * k * u + i),
          (C = D * k * u + P * o),
          (A = P * D * u + k * o),
          (E = k * D * u - P * o),
          (j = D * D * u + i),
          (t[0] = c * M + d * y + m * x),
          (t[1] = f * M + h * y + b * x),
          (t[2] = l * M + p * y + v * x),
          (t[3] = s * M + _ * y + g * x),
          (t[4] = c * w + d * O + m * C),
          (t[5] = f * w + h * O + b * C),
          (t[6] = l * w + p * O + v * C),
          (t[7] = s * w + _ * O + g * C),
          (t[8] = c * A + d * E + m * j),
          (t[9] = f * A + h * E + b * j),
          (t[10] = l * A + p * E + v * j),
          (t[11] = s * A + _ * E + g * j),
          n !== t &&
            ((t[12] = n[12]),
            (t[13] = n[13]),
            (t[14] = n[14]),
            (t[15] = n[15])),
          t);
    }
    function v(t, n, r) {
      var e = Math.sin(r),
        a = Math.cos(r),
        o = n[4],
        i = n[5],
        u = n[6],
        c = n[7],
        f = n[8],
        l = n[9],
        s = n[10],
        d = n[11];
      return (
        n !== t &&
          ((t[0] = n[0]),
          (t[1] = n[1]),
          (t[2] = n[2]),
          (t[3] = n[3]),
          (t[12] = n[12]),
          (t[13] = n[13]),
          (t[14] = n[14]),
          (t[15] = n[15])),
        (t[4] = o * a + f * e),
        (t[5] = i * a + l * e),
        (t[6] = u * a + s * e),
        (t[7] = c * a + d * e),
        (t[8] = f * a - o * e),
        (t[9] = l * a - i * e),
        (t[10] = s * a - u * e),
        (t[11] = d * a - c * e),
        t
      );
    }
    function g(t, n, r) {
      var e = Math.sin(r),
        a = Math.cos(r),
        o = n[0],
        i = n[1],
        u = n[2],
        c = n[3],
        f = n[8],
        l = n[9],
        s = n[10],
        d = n[11];
      return (
        n !== t &&
          ((t[4] = n[4]),
          (t[5] = n[5]),
          (t[6] = n[6]),
          (t[7] = n[7]),
          (t[12] = n[12]),
          (t[13] = n[13]),
          (t[14] = n[14]),
          (t[15] = n[15])),
        (t[0] = o * a - f * e),
        (t[1] = i * a - l * e),
        (t[2] = u * a - s * e),
        (t[3] = c * a - d * e),
        (t[8] = o * e + f * a),
        (t[9] = i * e + l * a),
        (t[10] = u * e + s * a),
        (t[11] = c * e + d * a),
        t
      );
    }
    function M(t, n, r) {
      var e = Math.sin(r),
        a = Math.cos(r),
        o = n[0],
        i = n[1],
        u = n[2],
        c = n[3],
        f = n[4],
        l = n[5],
        s = n[6],
        d = n[7];
      return (
        n !== t &&
          ((t[8] = n[8]),
          (t[9] = n[9]),
          (t[10] = n[10]),
          (t[11] = n[11]),
          (t[12] = n[12]),
          (t[13] = n[13]),
          (t[14] = n[14]),
          (t[15] = n[15])),
        (t[0] = o * a + f * e),
        (t[1] = i * a + l * e),
        (t[2] = u * a + s * e),
        (t[3] = c * a + d * e),
        (t[4] = f * a - o * e),
        (t[5] = l * a - i * e),
        (t[6] = s * a - u * e),
        (t[7] = d * a - c * e),
        t
      );
    }
    function y(t, n) {
      return (
        (t[0] = 1),
        (t[1] = 0),
        (t[2] = 0),
        (t[3] = 0),
        (t[4] = 0),
        (t[5] = 1),
        (t[6] = 0),
        (t[7] = 0),
        (t[8] = 0),
        (t[9] = 0),
        (t[10] = 1),
        (t[11] = 0),
        (t[12] = n[0]),
        (t[13] = n[1]),
        (t[14] = n[2]),
        (t[15] = 1),
        t
      );
    }
    function x(t, n) {
      return (
        (t[0] = n[0]),
        (t[1] = 0),
        (t[2] = 0),
        (t[3] = 0),
        (t[4] = 0),
        (t[5] = n[1]),
        (t[6] = 0),
        (t[7] = 0),
        (t[8] = 0),
        (t[9] = 0),
        (t[10] = n[2]),
        (t[11] = 0),
        (t[12] = 0),
        (t[13] = 0),
        (t[14] = 0),
        (t[15] = 1),
        t
      );
    }
    function w(t, n, r) {
      var a,
        o,
        i,
        u = r[0],
        c = r[1],
        f = r[2],
        l = Math.hypot(u, c, f);
      return l < e.b
        ? null
        : ((u *= l = 1 / l),
          (c *= l),
          (f *= l),
          (a = Math.sin(n)),
          (i = 1 - (o = Math.cos(n))),
          (t[0] = u * u * i + o),
          (t[1] = c * u * i + f * a),
          (t[2] = f * u * i - c * a),
          (t[3] = 0),
          (t[4] = u * c * i - f * a),
          (t[5] = c * c * i + o),
          (t[6] = f * c * i + u * a),
          (t[7] = 0),
          (t[8] = u * f * i + c * a),
          (t[9] = c * f * i - u * a),
          (t[10] = f * f * i + o),
          (t[11] = 0),
          (t[12] = 0),
          (t[13] = 0),
          (t[14] = 0),
          (t[15] = 1),
          t);
    }
    function O(t, n) {
      var r = Math.sin(n),
        e = Math.cos(n);
      return (
        (t[0] = 1),
        (t[1] = 0),
        (t[2] = 0),
        (t[3] = 0),
        (t[4] = 0),
        (t[5] = e),
        (t[6] = r),
        (t[7] = 0),
        (t[8] = 0),
        (t[9] = -r),
        (t[10] = e),
        (t[11] = 0),
        (t[12] = 0),
        (t[13] = 0),
        (t[14] = 0),
        (t[15] = 1),
        t
      );
    }
    function C(t, n) {
      var r = Math.sin(n),
        e = Math.cos(n);
      return (
        (t[0] = e),
        (t[1] = 0),
        (t[2] = -r),
        (t[3] = 0),
        (t[4] = 0),
        (t[5] = 1),
        (t[6] = 0),
        (t[7] = 0),
        (t[8] = r),
        (t[9] = 0),
        (t[10] = e),
        (t[11] = 0),
        (t[12] = 0),
        (t[13] = 0),
        (t[14] = 0),
        (t[15] = 1),
        t
      );
    }
    function A(t, n) {
      var r = Math.sin(n),
        e = Math.cos(n);
      return (
        (t[0] = e),
        (t[1] = r),
        (t[2] = 0),
        (t[3] = 0),
        (t[4] = -r),
        (t[5] = e),
        (t[6] = 0),
        (t[7] = 0),
        (t[8] = 0),
        (t[9] = 0),
        (t[10] = 1),
        (t[11] = 0),
        (t[12] = 0),
        (t[13] = 0),
        (t[14] = 0),
        (t[15] = 1),
        t
      );
    }
    function E(t, n, r) {
      var e = n[0],
        a = n[1],
        o = n[2],
        i = n[3],
        u = e + e,
        c = a + a,
        f = o + o,
        l = e * u,
        s = e * c,
        d = e * f,
        h = a * c,
        p = a * f,
        _ = o * f,
        m = i * u,
        b = i * c,
        v = i * f;
      return (
        (t[0] = 1 - (h + _)),
        (t[1] = s + v),
        (t[2] = d - b),
        (t[3] = 0),
        (t[4] = s - v),
        (t[5] = 1 - (l + _)),
        (t[6] = p + m),
        (t[7] = 0),
        (t[8] = d + b),
        (t[9] = p - m),
        (t[10] = 1 - (l + h)),
        (t[11] = 0),
        (t[12] = r[0]),
        (t[13] = r[1]),
        (t[14] = r[2]),
        (t[15] = 1),
        t
      );
    }
    function j(t, n) {
      var r = new e.a(3),
        a = -n[0],
        o = -n[1],
        i = -n[2],
        u = n[3],
        c = n[4],
        f = n[5],
        l = n[6],
        s = n[7],
        d = a * a + o * o + i * i + u * u;
      return (
        d > 0
          ? ((r[0] = (2 * (c * u + s * a + f * i - l * o)) / d),
            (r[1] = (2 * (f * u + s * o + l * a - c * i)) / d),
            (r[2] = (2 * (l * u + s * i + c * o - f * a)) / d))
          : ((r[0] = 2 * (c * u + s * a + f * i - l * o)),
            (r[1] = 2 * (f * u + s * o + l * a - c * i)),
            (r[2] = 2 * (l * u + s * i + c * o - f * a))),
        E(t, n, r),
        t
      );
    }
    function P(t, n) {
      return (t[0] = n[12]), (t[1] = n[13]), (t[2] = n[14]), t;
    }
    function k(t, n) {
      var r = n[0],
        e = n[1],
        a = n[2],
        o = n[4],
        i = n[5],
        u = n[6],
        c = n[8],
        f = n[9],
        l = n[10];
      return (
        (t[0] = Math.hypot(r, e, a)),
        (t[1] = Math.hypot(o, i, u)),
        (t[2] = Math.hypot(c, f, l)),
        t
      );
    }
    function D(t, n) {
      var r = new e.a(3);
      k(r, n);
      var a = 1 / r[0],
        o = 1 / r[1],
        i = 1 / r[2],
        u = n[0] * a,
        c = n[1] * o,
        f = n[2] * i,
        l = n[4] * a,
        s = n[5] * o,
        d = n[6] * i,
        h = n[8] * a,
        p = n[9] * o,
        _ = n[10] * i,
        m = u + s + _,
        b = 0;
      return (
        m > 0
          ? ((b = 2 * Math.sqrt(m + 1)),
            (t[3] = 0.25 * b),
            (t[0] = (d - p) / b),
            (t[1] = (h - f) / b),
            (t[2] = (c - l) / b))
          : u > s && u > _
          ? ((b = 2 * Math.sqrt(1 + u - s - _)),
            (t[3] = (d - p) / b),
            (t[0] = 0.25 * b),
            (t[1] = (c + l) / b),
            (t[2] = (h + f) / b))
          : s > _
          ? ((b = 2 * Math.sqrt(1 + s - u - _)),
            (t[3] = (h - f) / b),
            (t[0] = (c + l) / b),
            (t[1] = 0.25 * b),
            (t[2] = (d + p) / b))
          : ((b = 2 * Math.sqrt(1 + _ - u - s)),
            (t[3] = (c - l) / b),
            (t[0] = (h + f) / b),
            (t[1] = (d + p) / b),
            (t[2] = 0.25 * b)),
        t
      );
    }
    function I(t, n, r, e) {
      var a = n[0],
        o = n[1],
        i = n[2],
        u = n[3],
        c = a + a,
        f = o + o,
        l = i + i,
        s = a * c,
        d = a * f,
        h = a * l,
        p = o * f,
        _ = o * l,
        m = i * l,
        b = u * c,
        v = u * f,
        g = u * l,
        M = e[0],
        y = e[1],
        x = e[2];
      return (
        (t[0] = (1 - (p + m)) * M),
        (t[1] = (d + g) * M),
        (t[2] = (h - v) * M),
        (t[3] = 0),
        (t[4] = (d - g) * y),
        (t[5] = (1 - (s + m)) * y),
        (t[6] = (_ + b) * y),
        (t[7] = 0),
        (t[8] = (h + v) * x),
        (t[9] = (_ - b) * x),
        (t[10] = (1 - (s + p)) * x),
        (t[11] = 0),
        (t[12] = r[0]),
        (t[13] = r[1]),
        (t[14] = r[2]),
        (t[15] = 1),
        t
      );
    }
    function R(t, n, r, e, a) {
      var o = n[0],
        i = n[1],
        u = n[2],
        c = n[3],
        f = o + o,
        l = i + i,
        s = u + u,
        d = o * f,
        h = o * l,
        p = o * s,
        _ = i * l,
        m = i * s,
        b = u * s,
        v = c * f,
        g = c * l,
        M = c * s,
        y = e[0],
        x = e[1],
        w = e[2],
        O = a[0],
        C = a[1],
        A = a[2],
        E = (1 - (_ + b)) * y,
        j = (h + M) * y,
        P = (p - g) * y,
        k = (h - M) * x,
        D = (1 - (d + b)) * x,
        I = (m + v) * x,
        R = (p + g) * w,
        q = (m - v) * w,
        T = (1 - (d + _)) * w;
      return (
        (t[0] = E),
        (t[1] = j),
        (t[2] = P),
        (t[3] = 0),
        (t[4] = k),
        (t[5] = D),
        (t[6] = I),
        (t[7] = 0),
        (t[8] = R),
        (t[9] = q),
        (t[10] = T),
        (t[11] = 0),
        (t[12] = r[0] + O - (E * O + k * C + R * A)),
        (t[13] = r[1] + C - (j * O + D * C + q * A)),
        (t[14] = r[2] + A - (P * O + I * C + T * A)),
        (t[15] = 1),
        t
      );
    }
    function q(t, n) {
      var r = n[0],
        e = n[1],
        a = n[2],
        o = n[3],
        i = r + r,
        u = e + e,
        c = a + a,
        f = r * i,
        l = e * i,
        s = e * u,
        d = a * i,
        h = a * u,
        p = a * c,
        _ = o * i,
        m = o * u,
        b = o * c;
      return (
        (t[0] = 1 - s - p),
        (t[1] = l + b),
        (t[2] = d - m),
        (t[3] = 0),
        (t[4] = l - b),
        (t[5] = 1 - f - p),
        (t[6] = h + _),
        (t[7] = 0),
        (t[8] = d + m),
        (t[9] = h - _),
        (t[10] = 1 - f - s),
        (t[11] = 0),
        (t[12] = 0),
        (t[13] = 0),
        (t[14] = 0),
        (t[15] = 1),
        t
      );
    }
    function T(t, n, r, e, a, o, i) {
      var u = 1 / (r - n),
        c = 1 / (a - e),
        f = 1 / (o - i);
      return (
        (t[0] = 2 * o * u),
        (t[1] = 0),
        (t[2] = 0),
        (t[3] = 0),
        (t[4] = 0),
        (t[5] = 2 * o * c),
        (t[6] = 0),
        (t[7] = 0),
        (t[8] = (r + n) * u),
        (t[9] = (a + e) * c),
        (t[10] = (i + o) * f),
        (t[11] = -1),
        (t[12] = 0),
        (t[13] = 0),
        (t[14] = i * o * 2 * f),
        (t[15] = 0),
        t
      );
    }
    function L(t, n, r, e, a) {
      var o,
        i = 1 / Math.tan(n / 2);
      return (
        (t[0] = i / r),
        (t[1] = 0),
        (t[2] = 0),
        (t[3] = 0),
        (t[4] = 0),
        (t[5] = i),
        (t[6] = 0),
        (t[7] = 0),
        (t[8] = 0),
        (t[9] = 0),
        (t[11] = -1),
        (t[12] = 0),
        (t[13] = 0),
        (t[15] = 0),
        null != a && a !== 1 / 0
          ? ((o = 1 / (e - a)), (t[10] = (a + e) * o), (t[14] = 2 * a * e * o))
          : ((t[10] = -1), (t[14] = -2 * e)),
        t
      );
    }
    var U = L;
    function B(t, n, r, e, a) {
      var o,
        i = 1 / Math.tan(n / 2);
      return (
        (t[0] = i / r),
        (t[1] = 0),
        (t[2] = 0),
        (t[3] = 0),
        (t[4] = 0),
        (t[5] = i),
        (t[6] = 0),
        (t[7] = 0),
        (t[8] = 0),
        (t[9] = 0),
        (t[11] = -1),
        (t[12] = 0),
        (t[13] = 0),
        (t[15] = 0),
        null != a && a !== 1 / 0
          ? ((o = 1 / (e - a)), (t[10] = a * o), (t[14] = a * e * o))
          : ((t[10] = -1), (t[14] = -e)),
        t
      );
    }
    function S(t, n, r, e) {
      var a = Math.tan((n.upDegrees * Math.PI) / 180),
        o = Math.tan((n.downDegrees * Math.PI) / 180),
        i = Math.tan((n.leftDegrees * Math.PI) / 180),
        u = Math.tan((n.rightDegrees * Math.PI) / 180),
        c = 2 / (i + u),
        f = 2 / (a + o);
      return (
        (t[0] = c),
        (t[1] = 0),
        (t[2] = 0),
        (t[3] = 0),
        (t[4] = 0),
        (t[5] = f),
        (t[6] = 0),
        (t[7] = 0),
        (t[8] = -(i - u) * c * 0.5),
        (t[9] = (a - o) * f * 0.5),
        (t[10] = e / (r - e)),
        (t[11] = -1),
        (t[12] = 0),
        (t[13] = 0),
        (t[14] = (e * r) / (r - e)),
        (t[15] = 0),
        t
      );
    }
    function K(t, n, r, e, a, o, i) {
      var u = 1 / (n - r),
        c = 1 / (e - a),
        f = 1 / (o - i);
      return (
        (t[0] = -2 * u),
        (t[1] = 0),
        (t[2] = 0),
        (t[3] = 0),
        (t[4] = 0),
        (t[5] = -2 * c),
        (t[6] = 0),
        (t[7] = 0),
        (t[8] = 0),
        (t[9] = 0),
        (t[10] = 2 * f),
        (t[11] = 0),
        (t[12] = (n + r) * u),
        (t[13] = (a + e) * c),
        (t[14] = (i + o) * f),
        (t[15] = 1),
        t
      );
    }
    var N = K;
    function V(t, n, r, e, a, o, i) {
      var u = 1 / (n - r),
        c = 1 / (e - a),
        f = 1 / (o - i);
      return (
        (t[0] = -2 * u),
        (t[1] = 0),
        (t[2] = 0),
        (t[3] = 0),
        (t[4] = 0),
        (t[5] = -2 * c),
        (t[6] = 0),
        (t[7] = 0),
        (t[8] = 0),
        (t[9] = 0),
        (t[10] = f),
        (t[11] = 0),
        (t[12] = (n + r) * u),
        (t[13] = (a + e) * c),
        (t[14] = o * f),
        (t[15] = 1),
        t
      );
    }
    function W(t, n, r, a) {
      var o,
        i,
        u,
        c,
        l,
        s,
        d,
        h,
        p,
        _,
        m = n[0],
        b = n[1],
        v = n[2],
        g = a[0],
        M = a[1],
        y = a[2],
        x = r[0],
        w = r[1],
        O = r[2];
      return Math.abs(m - x) < e.b &&
        Math.abs(b - w) < e.b &&
        Math.abs(v - O) < e.b
        ? f(t)
        : ((d = m - x),
          (h = b - w),
          (p = v - O),
          (o = M * (p *= _ = 1 / Math.hypot(d, h, p)) - y * (h *= _)),
          (i = y * (d *= _) - g * p),
          (u = g * h - M * d),
          (_ = Math.hypot(o, i, u))
            ? ((o *= _ = 1 / _), (i *= _), (u *= _))
            : ((o = 0), (i = 0), (u = 0)),
          (c = h * u - p * i),
          (l = p * o - d * u),
          (s = d * i - h * o),
          (_ = Math.hypot(c, l, s))
            ? ((c *= _ = 1 / _), (l *= _), (s *= _))
            : ((c = 0), (l = 0), (s = 0)),
          (t[0] = o),
          (t[1] = c),
          (t[2] = d),
          (t[3] = 0),
          (t[4] = i),
          (t[5] = l),
          (t[6] = h),
          (t[7] = 0),
          (t[8] = u),
          (t[9] = s),
          (t[10] = p),
          (t[11] = 0),
          (t[12] = -(o * m + i * b + u * v)),
          (t[13] = -(c * m + l * b + s * v)),
          (t[14] = -(d * m + h * b + p * v)),
          (t[15] = 1),
          t);
    }
    function $(t, n, r, e) {
      var a = n[0],
        o = n[1],
        i = n[2],
        u = e[0],
        c = e[1],
        f = e[2],
        l = a - r[0],
        s = o - r[1],
        d = i - r[2],
        h = l * l + s * s + d * d;
      h > 0 && ((l *= h = 1 / Math.sqrt(h)), (s *= h), (d *= h));
      var p = c * d - f * s,
        _ = f * l - u * d,
        m = u * s - c * l;
      return (
        (h = p * p + _ * _ + m * m) > 0 &&
          ((p *= h = 1 / Math.sqrt(h)), (_ *= h), (m *= h)),
        (t[0] = p),
        (t[1] = _),
        (t[2] = m),
        (t[3] = 0),
        (t[4] = s * m - d * _),
        (t[5] = d * p - l * m),
        (t[6] = l * _ - s * p),
        (t[7] = 0),
        (t[8] = l),
        (t[9] = s),
        (t[10] = d),
        (t[11] = 0),
        (t[12] = a),
        (t[13] = o),
        (t[14] = i),
        (t[15] = 1),
        t
      );
    }
    function F(t) {
      return (
        "mat4(" +
        t[0] +
        ", " +
        t[1] +
        ", " +
        t[2] +
        ", " +
        t[3] +
        ", " +
        t[4] +
        ", " +
        t[5] +
        ", " +
        t[6] +
        ", " +
        t[7] +
        ", " +
        t[8] +
        ", " +
        t[9] +
        ", " +
        t[10] +
        ", " +
        t[11] +
        ", " +
        t[12] +
        ", " +
        t[13] +
        ", " +
        t[14] +
        ", " +
        t[15] +
        ")"
      );
    }
    function G(t) {
      return Math.hypot(
        t[0],
        t[1],
        t[2],
        t[3],
        t[4],
        t[5],
        t[6],
        t[7],
        t[8],
        t[9],
        t[10],
        t[11],
        t[12],
        t[13],
        t[14],
        t[15]
      );
    }
    function z(t, n, r) {
      return (
        (t[0] = n[0] + r[0]),
        (t[1] = n[1] + r[1]),
        (t[2] = n[2] + r[2]),
        (t[3] = n[3] + r[3]),
        (t[4] = n[4] + r[4]),
        (t[5] = n[5] + r[5]),
        (t[6] = n[6] + r[6]),
        (t[7] = n[7] + r[7]),
        (t[8] = n[8] + r[8]),
        (t[9] = n[9] + r[9]),
        (t[10] = n[10] + r[10]),
        (t[11] = n[11] + r[11]),
        (t[12] = n[12] + r[12]),
        (t[13] = n[13] + r[13]),
        (t[14] = n[14] + r[14]),
        (t[15] = n[15] + r[15]),
        t
      );
    }
    function H(t, n, r) {
      return (
        (t[0] = n[0] - r[0]),
        (t[1] = n[1] - r[1]),
        (t[2] = n[2] - r[2]),
        (t[3] = n[3] - r[3]),
        (t[4] = n[4] - r[4]),
        (t[5] = n[5] - r[5]),
        (t[6] = n[6] - r[6]),
        (t[7] = n[7] - r[7]),
        (t[8] = n[8] - r[8]),
        (t[9] = n[9] - r[9]),
        (t[10] = n[10] - r[10]),
        (t[11] = n[11] - r[11]),
        (t[12] = n[12] - r[12]),
        (t[13] = n[13] - r[13]),
        (t[14] = n[14] - r[14]),
        (t[15] = n[15] - r[15]),
        t
      );
    }
    function Q(t, n, r) {
      return (
        (t[0] = n[0] * r),
        (t[1] = n[1] * r),
        (t[2] = n[2] * r),
        (t[3] = n[3] * r),
        (t[4] = n[4] * r),
        (t[5] = n[5] * r),
        (t[6] = n[6] * r),
        (t[7] = n[7] * r),
        (t[8] = n[8] * r),
        (t[9] = n[9] * r),
        (t[10] = n[10] * r),
        (t[11] = n[11] * r),
        (t[12] = n[12] * r),
        (t[13] = n[13] * r),
        (t[14] = n[14] * r),
        (t[15] = n[15] * r),
        t
      );
    }
    function X(t, n, r, e) {
      return (
        (t[0] = n[0] + r[0] * e),
        (t[1] = n[1] + r[1] * e),
        (t[2] = n[2] + r[2] * e),
        (t[3] = n[3] + r[3] * e),
        (t[4] = n[4] + r[4] * e),
        (t[5] = n[5] + r[5] * e),
        (t[6] = n[6] + r[6] * e),
        (t[7] = n[7] + r[7] * e),
        (t[8] = n[8] + r[8] * e),
        (t[9] = n[9] + r[9] * e),
        (t[10] = n[10] + r[10] * e),
        (t[11] = n[11] + r[11] * e),
        (t[12] = n[12] + r[12] * e),
        (t[13] = n[13] + r[13] * e),
        (t[14] = n[14] + r[14] * e),
        (t[15] = n[15] + r[15] * e),
        t
      );
    }
    function Z(t, n) {
      return (
        t[0] === n[0] &&
        t[1] === n[1] &&
        t[2] === n[2] &&
        t[3] === n[3] &&
        t[4] === n[4] &&
        t[5] === n[5] &&
        t[6] === n[6] &&
        t[7] === n[7] &&
        t[8] === n[8] &&
        t[9] === n[9] &&
        t[10] === n[10] &&
        t[11] === n[11] &&
        t[12] === n[12] &&
        t[13] === n[13] &&
        t[14] === n[14] &&
        t[15] === n[15]
      );
    }
    function Y(t, n) {
      var r = t[0],
        a = t[1],
        o = t[2],
        i = t[3],
        u = t[4],
        c = t[5],
        f = t[6],
        l = t[7],
        s = t[8],
        d = t[9],
        h = t[10],
        p = t[11],
        _ = t[12],
        m = t[13],
        b = t[14],
        v = t[15],
        g = n[0],
        M = n[1],
        y = n[2],
        x = n[3],
        w = n[4],
        O = n[5],
        C = n[6],
        A = n[7],
        E = n[8],
        j = n[9],
        P = n[10],
        k = n[11],
        D = n[12],
        I = n[13],
        R = n[14],
        q = n[15];
      return (
        Math.abs(r - g) <= e.b * Math.max(1, Math.abs(r), Math.abs(g)) &&
        Math.abs(a - M) <= e.b * Math.max(1, Math.abs(a), Math.abs(M)) &&
        Math.abs(o - y) <= e.b * Math.max(1, Math.abs(o), Math.abs(y)) &&
        Math.abs(i - x) <= e.b * Math.max(1, Math.abs(i), Math.abs(x)) &&
        Math.abs(u - w) <= e.b * Math.max(1, Math.abs(u), Math.abs(w)) &&
        Math.abs(c - O) <= e.b * Math.max(1, Math.abs(c), Math.abs(O)) &&
        Math.abs(f - C) <= e.b * Math.max(1, Math.abs(f), Math.abs(C)) &&
        Math.abs(l - A) <= e.b * Math.max(1, Math.abs(l), Math.abs(A)) &&
        Math.abs(s - E) <= e.b * Math.max(1, Math.abs(s), Math.abs(E)) &&
        Math.abs(d - j) <= e.b * Math.max(1, Math.abs(d), Math.abs(j)) &&
        Math.abs(h - P) <= e.b * Math.max(1, Math.abs(h), Math.abs(P)) &&
        Math.abs(p - k) <= e.b * Math.max(1, Math.abs(p), Math.abs(k)) &&
        Math.abs(_ - D) <= e.b * Math.max(1, Math.abs(_), Math.abs(D)) &&
        Math.abs(m - I) <= e.b * Math.max(1, Math.abs(m), Math.abs(I)) &&
        Math.abs(b - R) <= e.b * Math.max(1, Math.abs(b), Math.abs(R)) &&
        Math.abs(v - q) <= e.b * Math.max(1, Math.abs(v), Math.abs(q))
      );
    }
    var J = p,
      tt = H;
  },
  64: function (t, n, r) {
    "use strict";
    function e(t) {
      return [
        parseInt(t.substr(1, 2), 16),
        parseInt(t.substr(3, 2), 16),
        parseInt(t.substr(5, 2), 16),
      ];
    }
    function a(t) {
      var n = Math.round(t).toString(16);
      return 1 === n.length ? "0" + n : n;
    }
    function o(t) {
      return "#" + a(t[0]) + a(t[1]) + a(t[2]);
    }
    r.r(n);
    var i,
      u = r(55),
      c = function (t, n, r) {
        if ((void 0 === r && (r = 128), !Object(u.a)(t)))
          throw new TypeError("Expected a function");
        var e = function () {
          for (var r = [], a = 0; a < arguments.length; a++)
            r[a] = arguments[a];
          var o = n ? n.apply(this, r) : r[0],
            i = e.cache;
          if (i.has(o)) return i.get(o);
          var u = t.apply(this, r);
          return i.set(o, u), u;
        };
        return (
          (e.cache = (function (t) {
            var n,
              r,
              e,
              a = t || 1;
            function o(t, o) {
              ++n > a && ((e = r), i(1), ++n), (r[t] = o);
            }
            function i(t) {
              (n = 0),
                (r = Object.create(null)),
                t || (e = Object.create(null));
            }
            return (
              i(),
              {
                clear: i,
                has: function (t) {
                  return void 0 !== r[t] || void 0 !== e[t];
                },
                get: function (t) {
                  var n = r[t];
                  return void 0 !== n
                    ? n
                    : void 0 !== (n = e[t])
                    ? (o(t, n), n)
                    : void 0;
                },
                set: function (t, n) {
                  void 0 !== r[t] ? (r[t] = n) : o(t, n);
                },
              }
            );
          })(r)),
          e
        );
      },
      f = /rgba?\(([\s.,0-9]+)\)/;
    var l = c(
      function (t) {
        if ("#" === t[0] && 7 === t.length) return t;
        i ||
          (i = (function () {
            var t = document.createElement("i");
            return (
              (t.title = "Web Colour Picker"),
              (t.style.display = "none"),
              document.body.appendChild(t),
              t
            );
          })()),
          (i.style.color = t);
        var n = document.defaultView
          .getComputedStyle(i, "")
          .getPropertyValue("color");
        return (n = o(
          f
            .exec(n)[1]
            .split(/\s*,\s*/)
            .map(function (t) {
              return Number(t);
            })
        ));
      },
      function (t) {
        return t;
      },
      256
    );
    function s(t, n, r, e) {
      return t[e] + (n[e] - t[e]) * r;
    }
    function d(t) {
      var n = ("string" === typeof t ? t.split("-") : t).map(function (t) {
        return e(-1 === t.indexOf("#") ? l(t) : t);
      });
      return function (t) {
        return (function (t, n) {
          var r = isNaN(Number(n)) || n < 0 ? 0 : n > 1 ? 1 : Number(n),
            e = t.length - 1,
            a = Math.floor(e * r),
            i = e * r - a,
            u = t[a],
            c = a === e ? u : t[a + 1];
          return o([s(u, c, i, 0), s(u, c, i, 1), s(u, c, i, 2)]);
        })(n, t);
      };
    }
    var h = /^l\s*\(\s*([\d.]+)\s*\)\s*(.*)/i,
      p = /^r\s*\(\s*([\d.]+)\s*,\s*([\d.]+)\s*,\s*([\d.]+)\s*\)\s*(.*)/i,
      _ = /[\d.]+:(#[^\s]+|[^)]+\))/gi;
    function m(t) {
      if (/^[r,R,L,l]{1}[\s]*\(/.test(t)) {
        var n,
          r = void 0;
        if ("l" === t[0]) {
          var e = +(a = h.exec(t))[1] + 90;
          (r = a[2]), (n = "linear-gradient(" + e + "deg, ");
        } else if ("r" === t[0]) {
          var a;
          (n = "radial-gradient("), (r = (a = p.exec(t))[4]);
        }
        var o = r.match(_);
        return (
          o.forEach(function (t, r) {
            var e = t.split(":");
            (n += e[1] + " " + 100 * Number(e[0]) + "%"),
              r !== o.length - 1 && (n += ", ");
          }),
          (n += ")")
        );
      }
      return t;
    }
    var b = r(12);
    function v(t, n, r) {
      var e = [0, 0, 0, 0, 0, 0, 0, 0, 0];
      return b.b.fromTranslation(e, r), b.b.multiply(t, e, n);
    }
    function g(t, n, r) {
      var e = [0, 0, 0, 0, 0, 0, 0, 0, 0];
      return b.b.fromRotation(e, r), b.b.multiply(t, e, n);
    }
    function M(t, n, r) {
      var e = [0, 0, 0, 0, 0, 0, 0, 0, 0];
      return b.b.fromScaling(e, r), b.b.multiply(t, e, n);
    }
    function y(t, n) {
      for (
        var r,
          e,
          a,
          o = t ? [].concat(t) : [1, 0, 0, 0, 1, 0, 0, 0, 1],
          i = 0,
          u = n.length;
        i < u;
        i++
      ) {
        var c = n[i];
        switch (c[0]) {
          case "t":
            v(o, o, [c[1], c[2]]);
            break;
          case "s":
            M(o, o, [c[1], c[2]]);
            break;
          case "r":
            g(o, o, c[1]);
            break;
          case "m":
            (r = o), (e = o), (a = c[1]), b.b.multiply(r, a, e);
        }
      }
      return o;
    }
    function x(t, n) {
      return t[0] * n[1] - n[0] * t[1];
    }
    function w(t, n, r) {
      var e = b.d.angle(t, n),
        a = x(t, n) >= 0;
      return r ? (a ? 2 * Math.PI - e : e) : a ? e : 2 * Math.PI - e;
    }
    function O(t, n, r) {
      return (
        r
          ? ((t[0] = n[1]), (t[1] = -1 * n[0]))
          : ((t[0] = -1 * n[1]), (t[1] = n[0])),
        t
      );
    }
    function C(t, n) {
      return (
        void 0 === n && (n = "off"),
        (function (t, n) {
          if ("off" === n) return [].concat(t);
          var r = "number" === typeof n && n >= 1 ? Math.pow(10, n) : 1;
          return t.map(function (t) {
            var e = t
              .slice(1)
              .map(Number)
              .map(function (t) {
                return n ? Math.round(t * r) / r : Math.round(t);
              });
            return [t[0]].concat(e);
          });
        })(t, n)
          .map(function (t) {
            return t[0] + t.slice(1).join(" ");
          })
          .join("")
      );
    }
    var A = r(2),
      E = { x1: 0, y1: 0, x2: 0, y2: 0, x: 0, y: 0, qx: null, qy: null };
    function j(t, n, r) {
      if (t[r].length > 7) {
        t[r].shift();
        for (var e = t[r], a = r; e.length; )
          (n[r] = "A"), t.splice((a += 1), 0, ["C"].concat(e.splice(0, 6)));
        t.splice(r, 1);
      }
    }
    var P = {
      a: 7,
      c: 6,
      h: 1,
      l: 2,
      m: 2,
      r: 4,
      q: 4,
      s: 4,
      t: 2,
      v: 1,
      z: 0,
    };
    function k(t) {
      return (
        Array.isArray(t) &&
        t.every(function (t) {
          var n = t[0].toLowerCase();
          return P[n] === t.length - 1 && "achlmqstvz".includes(n);
        })
      );
    }
    function D(t) {
      return (
        k(t) &&
        t.every(function (t) {
          var n = t[0];
          return n === n.toUpperCase();
        })
      );
    }
    function I(t) {
      return (
        D(t) &&
        t.every(function (t) {
          var n = t[0];
          return "ACLMQZ".includes(n);
        })
      );
    }
    function R(t) {
      for (
        var n = t.pathValue[t.segmentStart], r = n.toLowerCase(), e = t.data;
        e.length >= P[r] &&
        ("m" === r && e.length > 2
          ? (t.segments.push([n].concat(e.splice(0, 2))),
            (r = "l"),
            (n = "m" === n ? "l" : "L"))
          : t.segments.push([n].concat(e.splice(0, P[r]))),
        P[r]);

      );
    }
    function q(t) {
      var n = t.index,
        r = t.pathValue,
        e = r.charCodeAt(n);
      return 48 === e
        ? ((t.param = 0), void (t.index += 1))
        : 49 === e
        ? ((t.param = 1), void (t.index += 1))
        : void (t.err =
            '[path-util]: invalid Arc flag "' +
            r[n] +
            '", expecting 0 or 1 at index ' +
            n);
    }
    function T(t) {
      return (t >= 48 && t <= 57) || 43 === t || 45 === t || 46 === t;
    }
    function L(t) {
      return t >= 48 && t <= 57;
    }
    function U(t) {
      var n,
        r = t.max,
        e = t.pathValue,
        a = t.index,
        o = a,
        i = !1,
        u = !1,
        c = !1,
        f = !1;
      if (o >= r)
        t.err =
          "[path-util]: Invalid path value at index " +
          o +
          ', "pathValue" is missing param';
      else if (
        ((43 !== (n = e.charCodeAt(o)) && 45 !== n) ||
          ((o += 1), (n = e.charCodeAt(o))),
        L(n) || 46 === n)
      ) {
        if (46 !== n) {
          if (
            ((i = 48 === n),
            (o += 1),
            (n = e.charCodeAt(o)),
            i && o < r && n && L(n))
          )
            return void (t.err =
              "[path-util]: Invalid path value at index " +
              a +
              ', "' +
              e[a] +
              '" illegal number');
          for (; o < r && L(e.charCodeAt(o)); ) (o += 1), (u = !0);
          n = e.charCodeAt(o);
        }
        if (46 === n) {
          for (f = !0, o += 1; L(e.charCodeAt(o)); ) (o += 1), (c = !0);
          n = e.charCodeAt(o);
        }
        if (101 === n || 69 === n) {
          if (f && !u && !c)
            return void (t.err =
              "[path-util]: Invalid path value at index " +
              o +
              ', "' +
              e[o] +
              '" invalid float exponent');
          if (
            ((o += 1),
            (43 !== (n = e.charCodeAt(o)) && 45 !== n) || (o += 1),
            !(o < r && L(e.charCodeAt(o))))
          )
            return void (t.err =
              "[path-util]: Invalid path value at index " +
              o +
              ', "' +
              e[o] +
              '" invalid integer exponent');
          for (; o < r && L(e.charCodeAt(o)); ) o += 1;
        }
        (t.index = o), (t.param = +t.pathValue.slice(a, o));
      } else
        t.err =
          "[path-util]: Invalid path value at index " +
          o +
          ', "' +
          e[o] +
          '" is not a number';
    }
    function B(t) {
      for (
        var n, r = t.pathValue, e = t.max;
        t.index < e &&
        (10 === (n = r.charCodeAt(t.index)) ||
          13 === n ||
          8232 === n ||
          8233 === n ||
          32 === n ||
          9 === n ||
          11 === n ||
          12 === n ||
          160 === n ||
          (n >= 5760 &&
            [
              5760, 6158, 8192, 8193, 8194, 8195, 8196, 8197, 8198, 8199, 8200,
              8201, 8202, 8239, 8287, 12288, 65279,
            ].includes(n)));

      )
        t.index += 1;
    }
    function S(t) {
      var n = t.max,
        r = t.pathValue,
        e = t.index,
        a = r.charCodeAt(e),
        o = P[r[e].toLowerCase()];
      if (
        ((t.segmentStart = e),
        (function (t) {
          switch (32 | t) {
            case 109:
            case 122:
            case 108:
            case 104:
            case 118:
            case 99:
            case 115:
            case 113:
            case 116:
            case 97:
              return !0;
            default:
              return !1;
          }
        })(a))
      )
        if (((t.index += 1), B(t), (t.data = []), o)) {
          for (;;) {
            for (var i = o; i > 0; i -= 1) {
              if (
                (97 !== (32 | a) || (3 !== i && 4 !== i) ? U(t) : q(t),
                t.err.length)
              )
                return;
              t.data.push(t.param),
                B(t),
                t.index < n &&
                  44 === r.charCodeAt(t.index) &&
                  ((t.index += 1), B(t));
            }
            if (t.index >= t.max) break;
            if (!T(r.charCodeAt(t.index))) break;
          }
          R(t);
        } else R(t);
      else
        t.err =
          '[path-util]: Invalid path value "' +
          r[e] +
          '" is not a path command';
    }
    var K = function (t) {
      (this.pathValue = t),
        (this.segments = []),
        (this.max = t.length),
        (this.index = 0),
        (this.param = 0),
        (this.segmentStart = 0),
        (this.data = []),
        (this.err = "");
    };
    function N(t) {
      if (k(t)) return [].concat(t);
      var n = new K(t);
      for (B(n); n.index < n.max && !n.err.length; ) S(n);
      return n.err ? n.err : n.segments;
    }
    function V(t) {
      if (D(t)) return [].concat(t);
      var n = N(t),
        r = 0,
        e = 0,
        a = 0,
        o = 0;
      return n.map(function (t) {
        var n,
          i = t.slice(1).map(Number),
          u = t[0],
          c = u.toUpperCase();
        if ("M" === u)
          return (r = i[0]), (e = i[1]), (a = r), (o = e), ["M", r, e];
        if (u !== c)
          switch (c) {
            case "A":
              n = [c, i[0], i[1], i[2], i[3], i[4], i[5] + r, i[6] + e];
              break;
            case "V":
              n = [c, i[0] + e];
              break;
            case "H":
              n = [c, i[0] + r];
              break;
            default:
              var f = i.map(function (t, n) {
                return t + (n % 2 ? e : r);
              });
              n = [c].concat(f);
          }
        else n = [c].concat(i);
        var l = n.length;
        switch (c) {
          case "Z":
            (r = a), (e = o);
            break;
          case "H":
            r = n[1];
            break;
          case "V":
            e = n[1];
            break;
          default:
            (r = n[l - 2]), (e = n[l - 1]), "M" === c && ((a = r), (o = e));
        }
        return n;
      });
    }
    function W(t, n) {
      var r = t[0],
        e = n.x1,
        a = n.y1,
        o = n.x2,
        i = n.y2,
        u = t.slice(1).map(Number),
        c = t;
      if (("TQ".includes(r) || ((n.qx = null), (n.qy = null)), "H" === r))
        c = ["L", t[1], a];
      else if ("V" === r) c = ["L", e, t[1]];
      else if ("S" === r) {
        var f = 2 * e - o,
          l = 2 * a - i;
        (n.x1 = f), (n.y1 = l), (c = ["C", f, l].concat(u));
      } else if ("T" === r) {
        var s = 2 * e - n.qx,
          d = 2 * a - n.qy;
        (n.qx = s), (n.qy = d), (c = ["Q", s, d].concat(u));
      } else if ("Q" === r) {
        var h = u[0],
          p = u[1];
        (n.qx = h), (n.qy = p);
      }
      return c;
    }
    function $(t) {
      if (I(t)) return [].concat(t);
      for (var n = V(t), r = Object(A.a)({}, E), e = 0; e < n.length; e += 1) {
        n[e] = W(n[e], r);
        var a = n[e],
          o = a.length;
        (r.x1 = +a[o - 2]),
          (r.y1 = +a[o - 1]),
          (r.x2 = +a[o - 4] || r.x1),
          (r.y2 = +a[o - 3] || r.y1);
      }
      return n;
    }
    function F(t, n, r) {
      return {
        x: t * Math.cos(r) - n * Math.sin(r),
        y: t * Math.sin(r) + n * Math.cos(r),
      };
    }
    function G(t, n, r, e, a, o, i, u, c, f) {
      var l,
        s,
        d,
        h,
        p,
        _ = t,
        m = n,
        b = r,
        v = e,
        g = u,
        M = c,
        y = (120 * Math.PI) / 180,
        x = (Math.PI / 180) * (+a || 0),
        w = [];
      if (f) (s = f[0]), (d = f[1]), (h = f[2]), (p = f[3]);
      else {
        (_ = (l = F(_, m, -x)).x), (m = l.y);
        var O = (_ - (g = (l = F(g, M, -x)).x)) / 2,
          C = (m - (M = l.y)) / 2,
          A = (O * O) / (b * b) + (C * C) / (v * v);
        A > 1 && ((b *= A = Math.sqrt(A)), (v *= A));
        var E = b * b,
          j = v * v,
          P =
            (o === i ? -1 : 1) *
            Math.sqrt(
              Math.abs(
                (E * j - E * C * C - j * O * O) / (E * C * C + j * O * O)
              )
            );
        (h = (P * b * C) / v + (_ + g) / 2),
          (p = (P * -v * O) / b + (m + M) / 2),
          (s = Math.asin(
            ((((m - p) / v) * Math.pow(10, 9)) >> 0) / Math.pow(10, 9)
          )),
          (d = Math.asin(
            ((((M - p) / v) * Math.pow(10, 9)) >> 0) / Math.pow(10, 9)
          )),
          (s = _ < h ? Math.PI - s : s),
          (d = g < h ? Math.PI - d : d),
          s < 0 && (s = 2 * Math.PI + s),
          d < 0 && (d = 2 * Math.PI + d),
          i && s > d && (s -= 2 * Math.PI),
          !i && d > s && (d -= 2 * Math.PI);
      }
      var k = d - s;
      if (Math.abs(k) > y) {
        var D = d,
          I = g,
          R = M;
        (d = s + y * (i && d > s ? 1 : -1)),
          (w = G(
            (g = h + b * Math.cos(d)),
            (M = p + v * Math.sin(d)),
            b,
            v,
            a,
            0,
            i,
            I,
            R,
            [d, D, h, p]
          ));
      }
      k = d - s;
      var q = Math.cos(s),
        T = Math.sin(s),
        L = Math.cos(d),
        U = Math.sin(d),
        B = Math.tan(k / 4),
        S = (4 / 3) * b * B,
        K = (4 / 3) * v * B,
        N = [_, m],
        V = [_ + S * T, m - K * q],
        W = [g + S * U, M - K * L],
        $ = [g, M];
      if (((V[0] = 2 * N[0] - V[0]), (V[1] = 2 * N[1] - V[1]), f))
        return V.concat(W, $, w);
      for (var z = [], H = 0, Q = (w = V.concat(W, $, w)).length; H < Q; H += 1)
        z[H] = H % 2 ? F(w[H - 1], w[H], x).y : F(w[H], w[H + 1], x).x;
      return z;
    }
    function z(t, n, r) {
      var e = t[0],
        a = t[1];
      return [e + (n[0] - e) * r, a + (n[1] - a) * r];
    }
    var H = function (t, n, r, e) {
      var a = z([t, n], [r, e], 0.5);
      return Object(A.g)(Object(A.g)([], a, !0), [r, e, r, e], !1);
    };
    function Q(t, n) {
      var r,
        e,
        a,
        o,
        i,
        u,
        c,
        f = t[0],
        l = t.slice(1).map(Number),
        s = l[0],
        d = l[1],
        h = n.x1,
        p = n.y1,
        _ = n.x,
        m = n.y;
      switch (("TQ".includes(f) || ((n.qx = null), (n.qy = null)), f)) {
        case "M":
          return (n.x = s), (n.y = d), t;
        case "A":
          return (
            (r = [h, p].concat(l)),
            ["C"].concat(
              G(r[0], r[1], r[2], r[3], r[4], r[5], r[6], r[7], r[8], r[9])
            )
          );
        case "Q":
          return (
            (n.qx = s),
            (n.qy = d),
            (r = [h, p].concat(l)),
            ["C"].concat(
              ((e = r[0]),
              (a = r[1]),
              (o = r[2]),
              (i = r[3]),
              (u = r[4]),
              (c = r[5]),
              [
                (1 / 3) * e + (2 / 3) * o,
                (1 / 3) * a + (2 / 3) * i,
                (1 / 3) * u + (2 / 3) * o,
                (1 / 3) * c + (2 / 3) * i,
                u,
                c,
              ])
            )
          );
        case "L":
          return ["C"].concat(H(h, p, s, d));
        case "Z":
          return h === _ && p === m
            ? ["C", h, p, _, m, _, m]
            : ["C"].concat(H(h, p, _, m));
      }
      return t;
    }
    function X(t, n) {
      if (
        (void 0 === n && (n = !1),
        (function (t) {
          return (
            I(t) &&
            t.every(function (t) {
              var n = t[0];
              return "MC".includes(n);
            })
          );
        })(t))
      ) {
        var r = [].concat(t);
        return n ? [r, []] : r;
      }
      for (
        var e,
          a,
          o = $(t),
          i = Object(A.a)({}, E),
          u = [],
          c = "",
          f = o.length,
          l = [],
          s = 0;
        s < f;
        s += 1
      ) {
        o[s] && (c = o[s][0]), (u[s] = c);
        var d = Q(o[s], i);
        (o[s] = d),
          j(o, u, s),
          (f = o.length),
          "Z" === c && l.push(s),
          (a = (e = o[s]).length),
          (i.x1 = +e[a - 2]),
          (i.y1 = +e[a - 1]),
          (i.x2 = +e[a - 4] || i.x1),
          (i.y2 = +e[a - 3] || i.y1);
      }
      return n ? [o, l] : o;
    }
    function Z(t) {
      return t.map(function (t) {
        return Array.isArray(t) ? [].concat(t) : t;
      });
    }
    function Y(t) {
      var n = t
        .slice(1)
        .map(function (n, r, e) {
          return r
            ? e[r - 1].slice(-2).concat(n.slice(1))
            : t[0].slice(1).concat(n.slice(1));
        })
        .map(function (t) {
          return t.map(function (n, r) {
            return t[t.length - r - 2 * (1 - (r % 2))];
          });
        })
        .reverse();
      return [["M"].concat(n[0].slice(0, 2))].concat(
        n.map(function (t) {
          return ["C"].concat(t.slice(2));
        })
      );
    }
    function J(t, n) {
      return Math.sqrt(
        (t[0] - n[0]) * (t[0] - n[0]) + (t[1] - n[1]) * (t[1] - n[1])
      );
    }
    function tt(t, n, r, e, a) {
      var o = J([t, n], [r, e]),
        i = { x: 0, y: 0 };
      if ("number" === typeof a)
        if (a <= 0) i = { x: t, y: n };
        else if (a >= o) i = { x: r, y: e };
        else {
          var u = z([t, n], [r, e], a / o);
          i = { x: u[0], y: u[1] };
        }
      return {
        length: o,
        point: i,
        min: { x: Math.min(t, r), y: Math.min(n, e) },
        max: { x: Math.max(t, r), y: Math.max(n, e) },
      };
    }
    function nt(t, n) {
      var r = t.x,
        e = t.y,
        a = n.x,
        o = n.y,
        i = r * a + e * o,
        u = Math.sqrt(
          (Math.pow(r, 2) + Math.pow(e, 2)) * (Math.pow(a, 2) + Math.pow(o, 2))
        );
      return (r * o - e * a < 0 ? -1 : 1) * Math.acos(i / u);
    }
    function rt(t, n, r, e, a, o, i, u, c, f) {
      var l = Math.abs,
        s = Math.sin,
        d = Math.cos,
        h = Math.sqrt,
        p = Math.PI,
        _ = l(r),
        m = l(e),
        b = (((a % 360) + 360) % 360) * (p / 180);
      if (t === u && n === c) return { x: t, y: n };
      if (0 === _ || 0 === m) return tt(t, n, u, c, f).point;
      var v = (t - u) / 2,
        g = (n - c) / 2,
        M = { x: d(b) * v + s(b) * g, y: -s(b) * v + d(b) * g },
        y =
          Math.pow(M.x, 2) / Math.pow(_, 2) + Math.pow(M.y, 2) / Math.pow(m, 2);
      y > 1 && ((_ *= h(y)), (m *= h(y)));
      var x =
          (Math.pow(_, 2) * Math.pow(m, 2) -
            Math.pow(_, 2) * Math.pow(M.y, 2) -
            Math.pow(m, 2) * Math.pow(M.x, 2)) /
          (Math.pow(_, 2) * Math.pow(M.y, 2) +
            Math.pow(m, 2) * Math.pow(M.x, 2)),
        w = (o !== i ? 1 : -1) * h((x = x < 0 ? 0 : x)),
        O = w * ((_ * M.y) / m),
        C = w * ((-m * M.x) / _),
        A = d(b) * O - s(b) * C + (t + u) / 2,
        E = s(b) * O + d(b) * C + (n + c) / 2,
        j = { x: (M.x - O) / _, y: (M.y - C) / m },
        P = nt({ x: 1, y: 0 }, j),
        k = nt(j, { x: (-M.x - O) / _, y: (-M.y - C) / m });
      !i && k > 0 ? (k -= 2 * p) : i && k < 0 && (k += 2 * p);
      var D = P + (k %= 2 * p) * f,
        I = _ * d(D),
        R = m * s(D);
      return { x: d(b) * I - s(b) * R + A, y: s(b) * I + d(b) * R + E };
    }
    function et(t, n, r, e, a, o, i, u, c, f, l) {
      var s,
        d = l.bbox,
        h = void 0 === d || d,
        p = l.length,
        _ = void 0 === p || p,
        m = l.sampleSize,
        b = void 0 === m ? 30 : m,
        v = "number" === typeof f,
        g = t,
        M = n,
        y = 0,
        x = [g, M, y],
        w = [g, M],
        O = { x: 0, y: 0 },
        C = [{ x: g, y: M }];
      v && f <= 0 && (O = { x: g, y: M });
      for (var A = 0; A <= b; A += 1) {
        if (
          ((g = (s = rt(t, n, r, e, a, o, i, u, c, A / b)).x),
          (M = s.y),
          h && C.push({ x: g, y: M }),
          _ && (y += J(w, [g, M])),
          (w = [g, M]),
          v && y >= f && f > x[2])
        ) {
          var E = (y - f) / (y - x[2]);
          O = { x: w[0] * (1 - E) + x[0] * E, y: w[1] * (1 - E) + x[1] * E };
        }
        x = [g, M, y];
      }
      return (
        v && f >= y && (O = { x: u, y: c }),
        {
          length: y,
          point: O,
          min: {
            x: Math.min.apply(
              null,
              C.map(function (t) {
                return t.x;
              })
            ),
            y: Math.min.apply(
              null,
              C.map(function (t) {
                return t.y;
              })
            ),
          },
          max: {
            x: Math.max.apply(
              null,
              C.map(function (t) {
                return t.x;
              })
            ),
            y: Math.max.apply(
              null,
              C.map(function (t) {
                return t.y;
              })
            ),
          },
        }
      );
    }
    function at(t, n, r, e, a, o, i, u, c) {
      var f = 1 - c;
      return {
        x:
          Math.pow(f, 3) * t +
          3 * Math.pow(f, 2) * c * r +
          3 * f * Math.pow(c, 2) * a +
          Math.pow(c, 3) * i,
        y:
          Math.pow(f, 3) * n +
          3 * Math.pow(f, 2) * c * e +
          3 * f * Math.pow(c, 2) * o +
          Math.pow(c, 3) * u,
      };
    }
    function ot(t, n, r, e, a, o, i, u, c, f) {
      var l,
        s = f.bbox,
        d = void 0 === s || s,
        h = f.length,
        p = void 0 === h || h,
        _ = f.sampleSize,
        m = void 0 === _ ? 10 : _,
        b = "number" === typeof c,
        v = t,
        g = n,
        M = 0,
        y = [v, g, M],
        x = [v, g],
        w = { x: 0, y: 0 },
        O = [{ x: v, y: g }];
      b && c <= 0 && (w = { x: v, y: g });
      for (var C = 0; C <= m; C += 1) {
        if (
          ((v = (l = at(t, n, r, e, a, o, i, u, C / m)).x),
          (g = l.y),
          d && O.push({ x: v, y: g }),
          p && (M += J(x, [v, g])),
          (x = [v, g]),
          b && M >= c && c > y[2])
        ) {
          var A = (M - c) / (M - y[2]);
          w = { x: x[0] * (1 - A) + y[0] * A, y: x[1] * (1 - A) + y[1] * A };
        }
        y = [v, g, M];
      }
      return (
        b && c >= M && (w = { x: i, y: u }),
        {
          length: M,
          point: w,
          min: {
            x: Math.min.apply(
              null,
              O.map(function (t) {
                return t.x;
              })
            ),
            y: Math.min.apply(
              null,
              O.map(function (t) {
                return t.y;
              })
            ),
          },
          max: {
            x: Math.max.apply(
              null,
              O.map(function (t) {
                return t.x;
              })
            ),
            y: Math.max.apply(
              null,
              O.map(function (t) {
                return t.y;
              })
            ),
          },
        }
      );
    }
    function it(t, n, r, e, a, o, i) {
      var u = 1 - i;
      return {
        x: Math.pow(u, 2) * t + 2 * u * i * r + Math.pow(i, 2) * a,
        y: Math.pow(u, 2) * n + 2 * u * i * e + Math.pow(i, 2) * o,
      };
    }
    function ut(t, n, r, e, a, o, i, u) {
      var c,
        f = u.bbox,
        l = void 0 === f || f,
        s = u.length,
        d = void 0 === s || s,
        h = u.sampleSize,
        p = void 0 === h ? 10 : h,
        _ = "number" === typeof i,
        m = t,
        b = n,
        v = 0,
        g = [m, b, v],
        M = [m, b],
        y = { x: 0, y: 0 },
        x = [{ x: m, y: b }];
      _ && i <= 0 && (y = { x: m, y: b });
      for (var w = 0; w <= p; w += 1) {
        if (
          ((m = (c = it(t, n, r, e, a, o, w / p)).x),
          (b = c.y),
          l && x.push({ x: m, y: b }),
          d && (v += J(M, [m, b])),
          (M = [m, b]),
          _ && v >= i && i > g[2])
        ) {
          var O = (v - i) / (v - g[2]);
          y = { x: M[0] * (1 - O) + g[0] * O, y: M[1] * (1 - O) + g[1] * O };
        }
        g = [m, b, v];
      }
      return (
        _ && i >= v && (y = { x: a, y: o }),
        {
          length: v,
          point: y,
          min: {
            x: Math.min.apply(
              null,
              x.map(function (t) {
                return t.x;
              })
            ),
            y: Math.min.apply(
              null,
              x.map(function (t) {
                return t.y;
              })
            ),
          },
          max: {
            x: Math.max.apply(
              null,
              x.map(function (t) {
                return t.x;
              })
            ),
            y: Math.max.apply(
              null,
              x.map(function (t) {
                return t.y;
              })
            ),
          },
        }
      );
    }
    function ct(t, n, r) {
      for (
        var e,
          a,
          o,
          i,
          u,
          c,
          f,
          l,
          s,
          d = $(t),
          h = "number" === typeof n,
          p = [],
          _ = 0,
          m = 0,
          b = 0,
          v = 0,
          g = [],
          M = [],
          y = 0,
          x = { x: 0, y: 0 },
          w = x,
          O = x,
          C = x,
          A = 0,
          E = 0,
          j = d.length;
        E < j;
        E += 1
      )
        (p = (f = "M" === (l = (s = d[E])[0])) ? p : [_, m].concat(s.slice(1))),
          f
            ? ((w = x = { x: (b = s[1]), y: (v = s[2]) }),
              (y = 0),
              h && n < 0.001 && (C = x))
            : "L" === l
            ? ((y = (e = tt(p[0], p[1], p[2], p[3], (n || 0) - A)).length),
              (x = e.min),
              (w = e.max),
              (O = e.point))
            : "A" === l
            ? ((y = (a = et(
                p[0],
                p[1],
                p[2],
                p[3],
                p[4],
                p[5],
                p[6],
                p[7],
                p[8],
                (n || 0) - A,
                r || {}
              )).length),
              (x = a.min),
              (w = a.max),
              (O = a.point))
            : "C" === l
            ? ((y = (o = ot(
                p[0],
                p[1],
                p[2],
                p[3],
                p[4],
                p[5],
                p[6],
                p[7],
                (n || 0) - A,
                r || {}
              )).length),
              (x = o.min),
              (w = o.max),
              (O = o.point))
            : "Q" === l
            ? ((y = (i = ut(
                p[0],
                p[1],
                p[2],
                p[3],
                p[4],
                p[5],
                (n || 0) - A,
                r || {}
              )).length),
              (x = i.min),
              (w = i.max),
              (O = i.point))
            : "Z" === l &&
              ((y = (u = tt(
                (p = [_, m, b, v])[0],
                p[1],
                p[2],
                p[3],
                (n || 0) - A
              )).length),
              (x = u.min),
              (w = u.max),
              (O = u.point)),
          h && A < n && A + y >= n && (C = O),
          M.push(w),
          g.push(x),
          (A += y),
          (_ = (c = "Z" !== l ? s.slice(-2) : [b, v])[0]),
          (m = c[1]);
      return (
        h && n >= A && (C = { x: _, y: m }),
        {
          length: A,
          point: C,
          min: {
            x: Math.min.apply(
              null,
              g.map(function (t) {
                return t.x;
              })
            ),
            y: Math.min.apply(
              null,
              g.map(function (t) {
                return t.y;
              })
            ),
          },
          max: {
            x: Math.max.apply(
              null,
              M.map(function (t) {
                return t.x;
              })
            ),
            y: Math.max.apply(
              null,
              M.map(function (t) {
                return t.y;
              })
            ),
          },
        }
      );
    }
    function ft(t, n) {
      if (!t)
        return {
          x: 0,
          y: 0,
          width: 0,
          height: 0,
          x2: 0,
          y2: 0,
          cx: 0,
          cy: 0,
          cz: 0,
        };
      var r = ct(t, void 0, Object(A.a)(Object(A.a)({}, n), { length: !1 })),
        e = r.min,
        a = e.x,
        o = e.y,
        i = r.max,
        u = i.x,
        c = i.y,
        f = u - a,
        l = c - o;
      return {
        width: f,
        height: l,
        x: a,
        y: o,
        x2: u,
        y2: c,
        cx: a + f / 2,
        cy: o + l / 2,
        cz: Math.max(f, l) + Math.min(f, l) / 2,
      };
    }
    function lt(t, n) {
      return ct(
        t,
        void 0,
        Object(A.a)(Object(A.a)({}, n), { bbox: !1, length: !0 })
      ).length;
    }
    function st(t, n) {
      if (!t)
        return {
          length: 0,
          x: 0,
          y: 0,
          width: 0,
          height: 0,
          x2: 0,
          y2: 0,
          cx: 0,
          cy: 0,
          cz: 0,
        };
      var r = ct(
          t,
          void 0,
          Object(A.a)(Object(A.a)({}, n), { bbox: !0, length: !0 })
        ),
        e = r.length,
        a = r.min,
        o = a.x,
        i = a.y,
        u = r.max,
        c = u.x,
        f = u.y,
        l = c - o,
        s = f - i;
      return {
        length: e,
        width: l,
        height: s,
        x: o,
        y: i,
        x2: c,
        y2: f,
        cx: o + l / 2,
        cy: i + s / 2,
        cz: Math.max(l, s) + Math.min(l, s) / 2,
      };
    }
    function dt(t, n) {
      var r = t.length - 1,
        e = [],
        a = 0,
        o = (function (t) {
          var n = t.length,
            r = n - 1;
          return t.map(function (e, a) {
            return t.map(function (e, o) {
              var i,
                u = a + o;
              return 0 === o || (t[u] && "M" === t[u][0])
                ? ((i = t[u]), ["M"].concat(i.slice(-2)))
                : (u >= n && (u -= r), t[u]);
            });
          });
        })(t);
      return (
        o.forEach(function (o, i) {
          t.slice(1).forEach(function (e, o) {
            a += J(t[(i + o) % r].slice(-2), n[o % r].slice(-2));
          }),
            (e[i] = a),
            (a = 0);
        }),
        o[e.indexOf(Math.min.apply(null, e))]
      );
    }
    function ht(t) {
      var n = 0,
        r = 0,
        e = 0;
      return X(t)
        .map(function (t) {
          var a;
          switch (t[0]) {
            case "M":
              return (n = t[1]), (r = t[2]), 0;
            default:
              var o = t.slice(1),
                i = o[0],
                u = o[1],
                c = o[2],
                f = o[3],
                l = o[4],
                s = o[5];
              return (
                (e = (function (t, n, r, e, a, o, i, u) {
                  return (
                    (3 *
                      ((u - n) * (r + a) -
                        (i - t) * (e + o) +
                        e * (t - a) -
                        r * (n - o) +
                        u * (a + t / 3) -
                        i * (o + n / 3))) /
                    20
                  );
                })(n, r, i, u, c, f, l, s)),
                (a = t.slice(-2)),
                (n = a[0]),
                (r = a[1]),
                e
              );
          }
        })
        .reduce(function (t, n) {
          return t + n;
        }, 0);
    }
    function pt(t) {
      return ht(t) >= 0;
    }
    function _t(t, n, r) {
      return ct(t, n, Object(A.a)(Object(A.a)({}, r), { bbox: !1, length: !0 }))
        .point;
    }
    function mt(t, n) {
      for (
        var r,
          e,
          a,
          o,
          i = N(t),
          u = $(i),
          c = lt(i),
          f = function (t) {
            var r = t.x - n.x,
              e = t.y - n.y;
            return r * r + e * e;
          },
          l = 8,
          s = 0,
          d = 0,
          h = 1 / 0,
          p = 0;
        p <= c;
        p += l
      )
        (s = f((r = _t(u, p)))) < h && ((e = r), (d = p), (h = s));
      l /= 2;
      for (var _ = 0, m = 0, b = 0, v = 0; l > 0.5; )
        (b = f((a = _t(u, (_ = d - l))))),
          (v = f((o = _t(u, (m = d + l))))),
          _ >= 0 && b < h
            ? ((e = a), (d = _), (h = b))
            : m <= c && v < h
            ? ((e = o), (d = m), (h = v))
            : (l /= 2);
      var g = (function (t, n) {
        var r = N(t);
        if ("string" === typeof r) throw TypeError(r);
        var e = r.slice(),
          a = lt(e),
          o = e.length - 1,
          i = 0,
          u = 0,
          c = r[0],
          f = c.slice(-2),
          l = { x: f[0], y: f[1] };
        if (o <= 0 || !n || !Number.isFinite(n))
          return {
            segment: c,
            index: 0,
            length: u,
            point: l,
            lengthAtSegment: i,
          };
        if (n >= a)
          return (
            (u = a - (i = lt((e = r.slice(0, -1))))),
            { segment: r[o], index: o, length: u, lengthAtSegment: i }
          );
        for (var s = []; o > 0; )
          (c = e[o]),
            (u = a - (i = lt((e = e.slice(0, -1))))),
            (a = i),
            s.push({ segment: c, index: o, length: u, lengthAtSegment: i }),
            (o -= 1);
        return s.find(function (t) {
          return t.lengthAtSegment <= n;
        });
      })(i, d);
      return { closest: e, distance: Math.sqrt(h), segment: g };
    }
    function bt(t, n) {
      var r = mt(t, n).distance;
      return Math.abs(r) < 0.001;
    }
    function vt(t) {
      return t.map(function (t, n, r) {
        var e = n && r[n - 1].slice(-2).concat(t.slice(1)),
          a = n
            ? ot(e[0], e[1], e[2], e[3], e[4], e[5], e[6], e[7], e[8], {
                bbox: !1,
              }).length
            : 0;
        return {
          s: t,
          ss: n
            ? a
              ? (function (t, n) {
                  void 0 === n && (n = 0.5);
                  var r = t.slice(0, 2),
                    e = t.slice(2, 4),
                    a = t.slice(4, 6),
                    o = t.slice(6, 8),
                    i = z(r, e, n),
                    u = z(e, a, n),
                    c = z(a, o, n),
                    f = z(i, u, n),
                    l = z(u, c, n),
                    s = z(f, l, n);
                  return [["C"].concat(i, f, s), ["C"].concat(l, c, o)];
                })(e)
              : [t, t]
            : [t],
          l: a,
        };
      });
    }
    function gt(t, n, r) {
      var e = vt(t),
        a = vt(n),
        o = e.length,
        i = a.length,
        u = e.filter(function (t) {
          return t.l;
        }).length,
        c = a.filter(function (t) {
          return t.l;
        }).length,
        f =
          e
            .filter(function (t) {
              return t.l;
            })
            .reduce(function (t, n) {
              return t + n.l;
            }, 0) / u || 0,
        l =
          a
            .filter(function (t) {
              return t.l;
            })
            .reduce(function (t, n) {
              return t + n.l;
            }, 0) / c || 0,
        s = r || Math.max(o, i),
        d = [f, l],
        h = [s - o, s - i],
        p = 0,
        _ = [e, a].map(function (t, n) {
          return t.l === s
            ? t.map(function (t) {
                return t.s;
              })
            : t
                .map(function (t, r) {
                  return (
                    (p = r && h[n] && t.l >= d[n]),
                    (h[n] -= p ? 1 : 0),
                    p ? t.ss : [t.s]
                  );
                })
                .flat();
        });
      return _[0].length === _[1].length ? _ : gt(_[0], _[1], s);
    }
    var Mt = function (t) {
        return null !== t && "function" !== typeof t && isFinite(t.length);
      },
      yt = function (t, n) {
        return !!Mt(t) && t.indexOf(n) > -1;
      },
      xt = function (t, n) {
        if (!Mt(t)) return t;
        for (var r = [], e = 0; e < t.length; e++) {
          var a = t[e];
          n(a, e) && r.push(a);
        }
        return r;
      },
      wt = function (t, n) {
        return (
          void 0 === n && (n = []),
          xt(t, function (t) {
            return !yt(n, t);
          })
        );
      },
      Ot = function (t) {
        return null === t || void 0 === t;
      },
      Ct = r(100),
      At = Object.keys
        ? function (t) {
            return Object.keys(t);
          }
        : function (t) {
            var n = [];
            return (
              Object(Ct.a)(t, function (r, e) {
                (Object(u.a)(t) && "prototype" === e) || n.push(e);
              }),
              n
            );
          };
    var Et = function (t, n) {
        var r = At(n),
          e = r.length;
        if (Ot(t)) return !e;
        for (var a = 0; a < e; a += 1) {
          var o = r[a];
          if (n[o] !== t[o] || !(o in t)) return !1;
        }
        return !0;
      },
      jt = r(26),
      Pt = r(38);
    var kt = function (t, n) {
      if (!Object(jt.a)(t)) return null;
      var r;
      if (
        (Object(u.a)(n) && (r = n),
        Object(Pt.a)(n) &&
          (r = function (t) {
            return Et(t, n);
          }),
        r)
      )
        for (var e = 0; e < t.length; e += 1) if (r(t[e])) return t[e];
      return null;
    };
    var Dt = function (t, n, r) {
        void 0 === r && (r = 0);
        for (var e = r; e < t.length; e++) if (n(t[e], e)) return e;
        return -1;
      },
      It = function (t, n) {
        for (var r = null, e = 0; e < t.length; e++) {
          var a = t[e][n];
          if (!Ot(a)) {
            r = Object(jt.a)(a) ? a[0] : a;
            break;
          }
        }
        return r;
      },
      Rt = function (t) {
        if (!Object(jt.a)(t)) return [];
        for (var n = [], r = 0; r < t.length; r++) n = n.concat(t[r]);
        return n;
      },
      qt = function (t, n) {
        if ((void 0 === n && (n = []), Object(jt.a)(t)))
          for (var r = 0; r < t.length; r += 1) qt(t[r], n);
        else n.push(t);
        return n;
      },
      Tt = qt,
      Lt = function (t) {
        if (Object(jt.a)(t))
          return t.reduce(function (t, n) {
            return Math.max(t, n);
          }, t[0]);
      },
      Ut = function (t) {
        if (Object(jt.a)(t))
          return t.reduce(function (t, n) {
            return Math.min(t, n);
          }, t[0]);
      },
      Bt = function (t) {
        var n = t.filter(function (t) {
          return !isNaN(t);
        });
        if (!n.length) return { min: 0, max: 0 };
        if (Object(jt.a)(t[0])) {
          for (var r = [], e = 0; e < t.length; e++) r = r.concat(t[e]);
          n = r;
        }
        var a = Lt(n);
        return { min: Ut(n), max: a };
      },
      St = Array.prototype,
      Kt = St.splice,
      Nt = St.indexOf,
      Vt = function (t) {
        for (var n = [], r = 1; r < arguments.length; r++)
          n[r - 1] = arguments[r];
        for (var e = 0; e < n.length; e++)
          for (var a = n[e], o = -1; (o = Nt.call(t, a)) > -1; )
            Kt.call(t, o, 1);
        return t;
      },
      Wt = Array.prototype.splice,
      $t = function (t, n) {
        if (!Mt(t)) return [];
        for (var r = t ? n.length : 0, e = r - 1; r--; ) {
          var a = void 0,
            o = n[r];
          (r !== e && o === a) || ((a = o), Wt.call(t, o, 1));
        }
        return t;
      },
      Ft = function (t, n, r) {
        if (!Object(jt.a)(t) && !Object(Pt.a)(t)) return t;
        var e = r;
        return (
          Object(Ct.a)(t, function (t, r) {
            e = n(e, t, r);
          }),
          e
        );
      },
      Gt = function (t, n) {
        var r = [];
        if (!Mt(t)) return r;
        for (var e = -1, a = [], o = t.length; ++e < o; ) {
          var i = t[e];
          n(i, e, t) && (r.push(i), a.push(e));
        }
        return $t(t, a), r;
      },
      zt = r(29),
      Ht = function (t) {
        return Object(zt.a)(t, "String");
      };
    var Qt = function (t, n) {
      var r;
      if (Object(u.a)(n))
        r = function (t, r) {
          return n(t) - n(r);
        };
      else {
        var e = [];
        Ht(n) ? e.push(n) : Object(jt.a)(n) && (e = n),
          (r = function (t, n) {
            for (var r = 0; r < e.length; r += 1) {
              var a = e[r];
              if (t[a] > n[a]) return 1;
              if (t[a] < n[a]) return -1;
            }
            return 0;
          });
      }
      return t.sort(r), t;
    };
    function Xt(t, n) {
      void 0 === n && (n = new Map());
      var r = [];
      if (Array.isArray(t))
        for (var e = 0, a = t.length; e < a; e++) {
          var o = t[e];
          n.has(o) || (r.push(o), n.set(o, !0));
        }
      return r;
    }
    var Zt = function () {
        for (var t = [], n = 0; n < arguments.length; n++) t[n] = arguments[n];
        return Xt([].concat.apply([], t));
      },
      Yt = function (t, n) {
        for (var r = [], e = {}, a = 0; a < t.length; a++) {
          var o = t[a][n];
          if (!Ot(o)) {
            Object(jt.a)(o) || (o = [o]);
            for (var i = 0; i < o.length; i++) {
              var u = o[i];
              e[u] || (r.push(u), (e[u] = !0));
            }
          }
        }
        return r;
      };
    function Jt(t) {
      if (Mt(t)) return t[0];
    }
    function tn(t) {
      if (Mt(t)) {
        return t[t.length - 1];
      }
    }
    var nn = function (t, n) {
      return !(!Object(jt.a)(t) && !Ht(t)) && t[0] === n;
    };
    var rn = function (t, n) {
        return !(!Object(jt.a)(t) && !Ht(t)) && t[t.length - 1] === n;
      },
      en = function (t, n) {
        for (var r = 0; r < t.length; r++) if (!n(t[r], r)) return !1;
        return !0;
      },
      an = function (t, n) {
        for (var r = 0; r < t.length; r++) if (n(t[r], r)) return !0;
        return !1;
      },
      on = r(206);
    function un(t, n) {
      if (!n) return { 0: t };
      if (!Object(u.a)(n)) {
        var r = Object(jt.a)(n) ? n : n.replace(/\s+/g, "").split("*");
        n = function (t) {
          for (var n = "_", e = 0, a = r.length; e < a; e++)
            n += t[r[e]] && t[r[e]].toString();
          return n;
        };
      }
      return Object(on.a)(t, n);
    }
    var cn = function (t, n) {
      if (!n) return [t];
      var r = un(t, n),
        e = [];
      for (var a in r) e.push(r[a]);
      return e;
    };
    var fn = function (t, n) {
      return t["_wrap_" + n];
    };
    var ln = function (t, n) {
        if (t["_wrap_" + n]) return t["_wrap_" + n];
        var r = function (r) {
          t[n](r);
        };
        return (t["_wrap_" + n] = r), r;
      },
      sn = {};
    var dn = function (t) {
      var n = sn[t];
      if (!n) {
        for (var r = t.toString(16), e = r.length; e < 6; e++) r = "0" + r;
        (n = "#" + r), (sn[t] = n);
      }
      return n;
    };
    var hn = function (t) {
        var n = 0,
          r = 0,
          e = 0,
          a = 0;
        return (
          Object(jt.a)(t)
            ? 1 === t.length
              ? (n = r = e = a = t[0])
              : 2 === t.length
              ? ((n = e = t[0]), (r = a = t[1]))
              : 3 === t.length
              ? ((n = t[0]), (r = a = t[1]), (e = t[2]))
              : ((n = t[0]), (r = t[1]), (e = t[2]), (a = t[3]))
            : (n = r = e = a = t),
          { r1: n, r2: r, r3: e, r4: a }
        );
      },
      pn = function (t, n, r) {
        return t < n ? n : t > r ? r : t;
      },
      _n = function (t, n) {
        var r = n.toString(),
          e = r.indexOf(".");
        if (-1 === e) return Math.round(t);
        var a = r.substr(e + 1).length;
        return a > 20 && (a = 20), parseFloat(t.toFixed(a));
      },
      mn = function (t) {
        return Object(zt.a)(t, "Number");
      },
      bn = function (t) {
        return mn(t) && t % 1 !== 0;
      },
      vn = function (t) {
        return mn(t) && t % 2 === 0;
      },
      gn = Number.isInteger
        ? Number.isInteger
        : function (t) {
            return mn(t) && t % 1 === 0;
          },
      Mn = function (t) {
        return mn(t) && t < 0;
      };
    function yn(t, n, r) {
      return void 0 === r && (r = 1e-5), Math.abs(t - n) < r;
    }
    var xn = function (t) {
        return mn(t) && t % 2 !== 0;
      },
      wn = function (t) {
        return mn(t) && t > 0;
      },
      On = function (t, n) {
        if (Object(jt.a)(t)) {
          for (var r, e = -1 / 0, a = 0; a < t.length; a++) {
            var o = t[a],
              i = Object(u.a)(n) ? n(o) : o[n];
            i > e && ((r = o), (e = i));
          }
          return r;
        }
      },
      Cn = function (t, n) {
        if (Object(jt.a)(t)) {
          for (var r, e = 1 / 0, a = 0; a < t.length; a++) {
            var o = t[a],
              i = Object(u.a)(n) ? n(o) : o[n];
            i < e && ((r = o), (e = i));
          }
          return r;
        }
      },
      An = function (t, n) {
        return ((t % n) + n) % n;
      },
      En = 180 / Math.PI,
      jn = function (t) {
        return En * t;
      },
      Pn = parseInt,
      kn = Math.PI / 180,
      Dn = function (t) {
        return kn * t;
      },
      In = Ct.a,
      Rn = function (t, n) {
        return t.hasOwnProperty(n);
      },
      qn = Rn,
      Tn = Object.values
        ? function (t) {
            return Object.values(t);
          }
        : function (t) {
            var n = [];
            return (
              Object(Ct.a)(t, function (r, e) {
                (Object(u.a)(t) && "prototype" === e) || n.push(r);
              }),
              n
            );
          },
      Ln = function (t, n) {
        return yt(Tn(t), n);
      },
      Un = function (t) {
        return Ot(t) ? "" : t.toString();
      },
      Bn = function (t) {
        return Un(t).toLowerCase();
      },
      Sn = function (t) {
        var n = Un(t);
        return n.charAt(0).toLowerCase() + n.substring(1);
      };
    var Kn = function (t, n) {
        return t && n
          ? t.replace(/\\?\{([^{}]+)\}/g, function (t, r) {
              return "\\" === t.charAt(0)
                ? t.slice(1)
                : void 0 === n[r]
                ? ""
                : n[r];
            })
          : t;
      },
      Nn = function (t) {
        return Un(t).toUpperCase();
      },
      Vn = function (t) {
        var n = Un(t);
        return n.charAt(0).toUpperCase() + n.substring(1);
      },
      Wn = {}.toString,
      $n = function (t) {
        return Wn.call(t)
          .replace(/^\[object /, "")
          .replace(/]$/, "");
      },
      Fn = function (t) {
        return Object(zt.a)(t, "Arguments");
      },
      Gn = function (t) {
        return Object(zt.a)(t, "Boolean");
      },
      zn = function (t) {
        return Object(zt.a)(t, "Date");
      },
      Hn = function (t) {
        return Object(zt.a)(t, "Error");
      },
      Qn = function (t) {
        return mn(t) && isFinite(t);
      },
      Xn = function (t) {
        return null === t;
      },
      Zn = r(121),
      Yn = r(49),
      Jn = Object.prototype,
      tr = function (t) {
        var n = t && t.constructor;
        return t === (("function" === typeof n && n.prototype) || Jn);
      },
      nr = function (t) {
        return Object(zt.a)(t, "RegExp");
      },
      rr = function (t) {
        return void 0 === t;
      },
      er = function (t) {
        return t instanceof Element || t instanceof Document;
      };
    function ar(t) {
      return (
        window.requestAnimationFrame ||
        window.webkitRequestAnimationFrame ||
        window.mozRequestAnimationFrame ||
        window.msRequestAnimationFrame ||
        function (t) {
          return setTimeout(t, 16);
        }
      )(t);
    }
    function or(t) {
      (
        window.cancelAnimationFrame ||
        window.webkitCancelAnimationFrame ||
        window.mozCancelAnimationFrame ||
        window.msCancelAnimationFrame ||
        clearTimeout
      )(t);
    }
    function ir(t, n) {
      for (var r in n)
        n.hasOwnProperty(r) &&
          "constructor" !== r &&
          void 0 !== n[r] &&
          (t[r] = n[r]);
    }
    function ur(t, n, r, e) {
      return n && ir(t, n), r && ir(t, r), e && ir(t, e), t;
    }
    var cr = function () {
        for (var t = [], n = 0; n < arguments.length; n++) t[n] = arguments[n];
        for (var r = t[0], e = 1; e < t.length; e++) {
          var a = t[e];
          Object(u.a)(a) && (a = a.prototype), ur(r.prototype, a);
        }
      },
      fr = function (t) {
        if ("object" !== typeof t || null === t) return t;
        var n;
        if (Object(jt.a)(t)) {
          n = [];
          for (var r = 0, e = t.length; r < e; r++)
            "object" === typeof t[r] && null != t[r]
              ? (n[r] = fr(t[r]))
              : (n[r] = t[r]);
        } else
          for (var a in ((n = {}), t))
            "object" === typeof t[a] && null != t[a]
              ? (n[a] = fr(t[a]))
              : (n[a] = t[a]);
        return n;
      },
      lr = fr;
    var sr = function (t, n, r) {
        var e;
        return function () {
          var a = this,
            o = arguments,
            i = function () {
              (e = null), r || t.apply(a, o);
            },
            u = r && !e;
          clearTimeout(e), (e = setTimeout(i, n)), u && t.apply(a, o);
        };
      },
      dr = r(39),
      hr = function (t, n, r, e) {
        Object(u.a)(n) || ((r = n), (n = t), (t = function () {}));
        var a = Object.create
            ? function (t, n) {
                return Object.create(t, { constructor: { value: n } });
              }
            : function (t, n) {
                function r() {}
                r.prototype = t;
                var e = new r();
                return (e.constructor = n), e;
              },
          o = a(n.prototype, t);
        return (
          (t.prototype = ur(o, t.prototype)),
          (t.superclass = a(n.prototype, n)),
          ur(o, r),
          ur(t, e),
          t
        );
      },
      pr = function (t, n) {
        if (!Mt(t)) return -1;
        var r = Array.prototype.indexOf;
        if (r) return r.call(t, n);
        for (var e = -1, a = 0; a < t.length; a++)
          if (t[a] === n) {
            e = a;
            break;
          }
        return e;
      },
      _r = Object.prototype.hasOwnProperty;
    var mr = function (t) {
        if (Ot(t)) return !0;
        if (Mt(t)) return !t.length;
        var n = $n(t);
        if ("Map" === n || "Set" === n) return !t.size;
        if (tr(t)) return !Object.keys(t).length;
        for (var r in t) if (_r.call(t, r)) return !1;
        return !0;
      },
      br = function (t, n) {
        if (t === n) return !0;
        if (!t || !n) return !1;
        if (Ht(t) || Ht(n)) return !1;
        if (Mt(t) || Mt(n)) {
          if (t.length !== n.length) return !1;
          for (var r = !0, e = 0; e < t.length && (r = br(t[e], n[e])); e++);
          return r;
        }
        if (Object(Yn.a)(t) || Object(Yn.a)(n)) {
          var a = Object.keys(t),
            o = Object.keys(n);
          if (a.length !== o.length) return !1;
          for (r = !0, e = 0; e < a.length && (r = br(t[a[e]], n[a[e]])); e++);
          return r;
        }
        return !1;
      },
      vr = br,
      gr = function (t, n, r) {
        return Object(u.a)(r) ? !!r(t, n) : vr(t, n);
      },
      Mr = function (t, n) {
        if (!Mt(t)) return t;
        for (var r = [], e = 0; e < t.length; e++) {
          var a = t[e];
          r.push(n(a, e));
        }
        return r;
      },
      yr = function (t) {
        return t;
      },
      xr = function (t, n) {
        void 0 === n && (n = yr);
        var r = {};
        return (
          Object(Zn.a)(t) &&
            !Ot(t) &&
            Object.keys(t).forEach(function (e) {
              r[e] = n(t[e], e);
            }),
          r
        );
      },
      wr = function (t, n, r) {
        for (var e = 0, a = Ht(n) ? n.split(".") : n; t && e < a.length; )
          t = t[a[e++]];
        return void 0 === t || e < a.length ? r : t;
      },
      Or = function (t, n, r) {
        var e = t,
          a = Ht(n) ? n.split(".") : n;
        return (
          a.forEach(function (t, n) {
            n < a.length - 1
              ? (Object(Zn.a)(e[t]) || (e[t] = mn(a[n + 1]) ? [] : {}),
                (e = e[t]))
              : (e[t] = r);
          }),
          t
        );
      },
      Cr = Object.prototype.hasOwnProperty,
      Ar = function (t, n) {
        if (null === t || !Object(Pt.a)(t)) return {};
        var r = {};
        return (
          Object(Ct.a)(n, function (n) {
            Cr.call(t, n) && (r[n] = t[n]);
          }),
          r
        );
      },
      Er = function (t, n) {
        return Ft(
          t,
          function (t, r, e) {
            return n.includes(e) || (t[e] = r), t;
          },
          {}
        );
      },
      jr = function (t, n, r) {
        var e,
          a,
          o,
          i,
          u = 0;
        r || (r = {});
        var c = function () {
            (u = !1 === r.leading ? 0 : Date.now()),
              (e = null),
              (i = t.apply(a, o)),
              e || (a = o = null);
          },
          f = function () {
            var f = Date.now();
            u || !1 !== r.leading || (u = f);
            var l = n - (f - u);
            return (
              (a = this),
              (o = arguments),
              l <= 0 || l > n
                ? (e && (clearTimeout(e), (e = null)),
                  (u = f),
                  (i = t.apply(a, o)),
                  e || (a = o = null))
                : e || !1 === r.trailing || (e = setTimeout(c, l)),
              i
            );
          };
        return (
          (f.cancel = function () {
            clearTimeout(e), (u = 0), (e = a = o = null);
          }),
          f
        );
      },
      Pr = function (t) {
        return Mt(t) ? Array.prototype.slice.call(t) : [];
      },
      kr = {},
      Dr = function (t) {
        return kr[(t = t || "g")] ? (kr[t] += 1) : (kr[t] = 1), t + kr[t];
      },
      Ir = function () {},
      Rr = function (t) {
        return t;
      };
    function qr(t) {
      return Ot(t) ? 0 : Mt(t) ? t.length : Object.keys(t).length;
    }
    var Tr = (function () {
      function t() {
        this.map = {};
      }
      return (
        (t.prototype.has = function (t) {
          return void 0 !== this.map[t];
        }),
        (t.prototype.get = function (t, n) {
          var r = this.map[t];
          return void 0 === r ? n : r;
        }),
        (t.prototype.set = function (t, n) {
          this.map[t] = n;
        }),
        (t.prototype.clear = function () {
          this.map = {};
        }),
        (t.prototype.delete = function (t) {
          delete this.map[t];
        }),
        (t.prototype.size = function () {
          return Object.keys(this.map).length;
        }),
        t
      );
    })();
    function Lr(t) {
      return Math.abs(t) < 1e-6 ? 0 : t < 0 ? -1 : 1;
    }
    function Ur(t, n, r) {
      return (
        (r[0] - t[0]) * (n[1] - t[1]) === (n[0] - t[0]) * (r[1] - t[1]) &&
        Math.min(t[0], n[0]) <= r[0] &&
        r[0] <= Math.max(t[0], n[0]) &&
        Math.min(t[1], n[1]) <= r[1] &&
        r[1] <= Math.max(t[1], n[1])
      );
    }
    function Br(t, n, r) {
      var e = !1,
        a = t.length;
      if (a <= 2) return !1;
      for (var o = 0; o < a; o++) {
        var i = t[o],
          u = t[(o + 1) % a];
        if (Ur(i, u, [n, r])) return !0;
        Lr(i[1] - r) > 0 !== Lr(u[1] - r) > 0 &&
          Lr(n - ((r - i[1]) * (i[0] - u[0])) / (i[1] - u[1]) - i[0]) < 0 &&
          (e = !e);
      }
      return e;
    }
    var Sr = function (t, n, r) {
      return t >= n && t <= r;
    };
    function Kr(t) {
      for (var n = [], r = t.length, e = 0; e < r - 1; e++) {
        var a = t[e],
          o = t[e + 1];
        n.push({ from: { x: a[0], y: a[1] }, to: { x: o[0], y: o[1] } });
      }
      if (n.length > 1) {
        var i = t[0],
          u = t[r - 1];
        n.push({ from: { x: u[0], y: u[1] }, to: { x: i[0], y: i[1] } });
      }
      return n;
    }
    function Nr(t, n) {
      var r = !1;
      return (
        t.forEach(function (t) {
          if (
            (function (t, n, r, e) {
              var a = r.x - t.x,
                o = r.y - t.y,
                i = n.x - t.x,
                u = n.y - t.y,
                c = e.x - r.x,
                f = e.y - r.y,
                l = i * f - u * c,
                s = null;
              if (l * l > 0.001 * (i * i + u * u) * (c * c + f * f)) {
                var d = (a * f - o * c) / l,
                  h = (a * u - o * i) / l;
                Sr(d, 0, 1) &&
                  Sr(h, 0, 1) &&
                  (s = { x: t.x + d * i, y: t.y + d * u });
              }
              return s;
            })(t.from, t.to, n.from, n.to)
          )
            return (r = !0), !1;
        }),
        r
      );
    }
    function Vr(t) {
      var n = t.map(function (t) {
          return t[0];
        }),
        r = t.map(function (t) {
          return t[1];
        });
      return {
        minX: Math.min.apply(null, n),
        maxX: Math.max.apply(null, n),
        minY: Math.min.apply(null, r),
        maxY: Math.max.apply(null, r),
      };
    }
    function Wr(t, n) {
      if (t.length < 2 || n.length < 2) return !1;
      var r,
        e,
        a = Vr(t),
        o = Vr(n);
      if (
        ((r = a),
        (e = o).minX > r.maxX ||
          e.maxX < r.minX ||
          e.minY > r.maxY ||
          e.maxY < r.minY)
      )
        return !1;
      var i = !1;
      if (
        (n.forEach(function (n) {
          if (Br(t, n[0], n[1])) return (i = !0), !1;
        }),
        i)
      )
        return !0;
      if (
        (t.forEach(function (t) {
          if (Br(n, t[0], t[1])) return (i = !0), !1;
        }),
        i)
      )
        return !0;
      var u = Kr(t),
        c = Kr(n),
        f = !1;
      return (
        c.forEach(function (t) {
          if (Nr(u, t)) return (f = !0), !1;
        }),
        f
      );
    }
    function $r(t) {
      var n = document.createElement("div");
      n.innerHTML = t;
      var r = n.childNodes[0];
      return r && n.contains(r) && n.removeChild(r), r;
    }
    function Fr(t, n) {
      if (t)
        return (
          Object.keys(n).forEach(function (r) {
            t.style[r] = n[r];
          }),
          t
        );
    }
    r.d(n, "rgb2arr", function () {
      return e;
    }),
      r.d(n, "gradient", function () {
        return d;
      }),
      r.d(n, "toRGB", function () {
        return l;
      }),
      r.d(n, "toCSSGradient", function () {
        return m;
      }),
      r.d(n, "transform", function () {
        return y;
      }),
      r.d(n, "angleTo", function () {
        return w;
      }),
      r.d(n, "direction", function () {
        return x;
      }),
      r.d(n, "vertical", function () {
        return O;
      }),
      r.d(n, "path2String", function () {
        return C;
      }),
      r.d(n, "path2Curve", function () {
        return X;
      }),
      r.d(n, "path2Absolute", function () {
        return V;
      }),
      r.d(n, "clonePath", function () {
        return Z;
      }),
      r.d(n, "normalizePath", function () {
        return $;
      }),
      r.d(n, "reverseCurve", function () {
        return Y;
      }),
      r.d(n, "arcToCubic", function () {
        return G;
      }),
      r.d(n, "getPathBBox", function () {
        return ft;
      }),
      r.d(n, "getTotalLength", function () {
        return lt;
      }),
      r.d(n, "getPathBBoxTotalLength", function () {
        return st;
      }),
      r.d(n, "getRotatedCurve", function () {
        return dt;
      }),
      r.d(n, "getPathArea", function () {
        return ht;
      }),
      r.d(n, "getDrawDirection", function () {
        return pt;
      }),
      r.d(n, "getPointAtLength", function () {
        return _t;
      }),
      r.d(n, "isPointInStroke", function () {
        return bt;
      }),
      r.d(n, "distanceSquareRoot", function () {
        return J;
      }),
      r.d(n, "equalizeSegments", function () {
        return gt;
      }),
      r.d(n, "contains", function () {
        return yt;
      }),
      r.d(n, "includes", function () {
        return yt;
      }),
      r.d(n, "difference", function () {
        return wt;
      }),
      r.d(n, "find", function () {
        return kt;
      }),
      r.d(n, "findIndex", function () {
        return Dt;
      }),
      r.d(n, "firstValue", function () {
        return It;
      }),
      r.d(n, "flatten", function () {
        return Rt;
      }),
      r.d(n, "flattenDeep", function () {
        return Tt;
      }),
      r.d(n, "getRange", function () {
        return Bt;
      }),
      r.d(n, "pull", function () {
        return Vt;
      }),
      r.d(n, "pullAt", function () {
        return $t;
      }),
      r.d(n, "reduce", function () {
        return Ft;
      }),
      r.d(n, "remove", function () {
        return Gt;
      }),
      r.d(n, "sortBy", function () {
        return Qt;
      }),
      r.d(n, "union", function () {
        return Zt;
      }),
      r.d(n, "uniq", function () {
        return Xt;
      }),
      r.d(n, "valuesOfKey", function () {
        return Yt;
      }),
      r.d(n, "head", function () {
        return Jt;
      }),
      r.d(n, "last", function () {
        return tn;
      }),
      r.d(n, "startsWith", function () {
        return nn;
      }),
      r.d(n, "endsWith", function () {
        return rn;
      }),
      r.d(n, "filter", function () {
        return xt;
      }),
      r.d(n, "every", function () {
        return en;
      }),
      r.d(n, "some", function () {
        return an;
      }),
      r.d(n, "group", function () {
        return cn;
      }),
      r.d(n, "groupBy", function () {
        return on.a;
      }),
      r.d(n, "groupToMap", function () {
        return un;
      }),
      r.d(n, "getWrapBehavior", function () {
        return fn;
      }),
      r.d(n, "wrapBehavior", function () {
        return ln;
      }),
      r.d(n, "number2color", function () {
        return dn;
      }),
      r.d(n, "parseRadius", function () {
        return hn;
      }),
      r.d(n, "clamp", function () {
        return pn;
      }),
      r.d(n, "fixedBase", function () {
        return _n;
      }),
      r.d(n, "isDecimal", function () {
        return bn;
      }),
      r.d(n, "isEven", function () {
        return vn;
      }),
      r.d(n, "isInteger", function () {
        return gn;
      }),
      r.d(n, "isNegative", function () {
        return Mn;
      }),
      r.d(n, "isNumberEqual", function () {
        return yn;
      }),
      r.d(n, "isOdd", function () {
        return xn;
      }),
      r.d(n, "isPositive", function () {
        return wn;
      }),
      r.d(n, "max", function () {
        return Lt;
      }),
      r.d(n, "maxBy", function () {
        return On;
      }),
      r.d(n, "min", function () {
        return Ut;
      }),
      r.d(n, "minBy", function () {
        return Cn;
      }),
      r.d(n, "mod", function () {
        return An;
      }),
      r.d(n, "toDegree", function () {
        return jn;
      }),
      r.d(n, "toInteger", function () {
        return Pn;
      }),
      r.d(n, "toRadian", function () {
        return Dn;
      }),
      r.d(n, "forIn", function () {
        return In;
      }),
      r.d(n, "has", function () {
        return Rn;
      }),
      r.d(n, "hasKey", function () {
        return qn;
      }),
      r.d(n, "hasValue", function () {
        return Ln;
      }),
      r.d(n, "keys", function () {
        return At;
      }),
      r.d(n, "isMatch", function () {
        return Et;
      }),
      r.d(n, "values", function () {
        return Tn;
      }),
      r.d(n, "lowerCase", function () {
        return Bn;
      }),
      r.d(n, "lowerFirst", function () {
        return Sn;
      }),
      r.d(n, "substitute", function () {
        return Kn;
      }),
      r.d(n, "upperCase", function () {
        return Nn;
      }),
      r.d(n, "upperFirst", function () {
        return Vn;
      }),
      r.d(n, "getType", function () {
        return $n;
      }),
      r.d(n, "isArguments", function () {
        return Fn;
      }),
      r.d(n, "isArray", function () {
        return jt.a;
      }),
      r.d(n, "isArrayLike", function () {
        return Mt;
      }),
      r.d(n, "isBoolean", function () {
        return Gn;
      }),
      r.d(n, "isDate", function () {
        return zn;
      }),
      r.d(n, "isError", function () {
        return Hn;
      }),
      r.d(n, "isFunction", function () {
        return u.a;
      }),
      r.d(n, "isFinite", function () {
        return Qn;
      }),
      r.d(n, "isNil", function () {
        return Ot;
      }),
      r.d(n, "isNull", function () {
        return Xn;
      }),
      r.d(n, "isNumber", function () {
        return mn;
      }),
      r.d(n, "isObject", function () {
        return Zn.a;
      }),
      r.d(n, "isObjectLike", function () {
        return Yn.a;
      }),
      r.d(n, "isPlainObject", function () {
        return Pt.a;
      }),
      r.d(n, "isPrototype", function () {
        return tr;
      }),
      r.d(n, "isRegExp", function () {
        return nr;
      }),
      r.d(n, "isString", function () {
        return Ht;
      }),
      r.d(n, "isType", function () {
        return zt.a;
      }),
      r.d(n, "isUndefined", function () {
        return rr;
      }),
      r.d(n, "isElement", function () {
        return er;
      }),
      r.d(n, "requestAnimationFrame", function () {
        return ar;
      }),
      r.d(n, "clearAnimationFrame", function () {
        return or;
      }),
      r.d(n, "augment", function () {
        return cr;
      }),
      r.d(n, "clone", function () {
        return lr;
      }),
      r.d(n, "debounce", function () {
        return sr;
      }),
      r.d(n, "memoize", function () {
        return c;
      }),
      r.d(n, "deepMix", function () {
        return dr.a;
      }),
      r.d(n, "each", function () {
        return Ct.a;
      }),
      r.d(n, "extend", function () {
        return hr;
      }),
      r.d(n, "indexOf", function () {
        return pr;
      }),
      r.d(n, "isEmpty", function () {
        return mr;
      }),
      r.d(n, "isEqual", function () {
        return vr;
      }),
      r.d(n, "isEqualWith", function () {
        return gr;
      }),
      r.d(n, "map", function () {
        return Mr;
      }),
      r.d(n, "mapValues", function () {
        return xr;
      }),
      r.d(n, "mix", function () {
        return ur;
      }),
      r.d(n, "assign", function () {
        return ur;
      }),
      r.d(n, "get", function () {
        return wr;
      }),
      r.d(n, "set", function () {
        return Or;
      }),
      r.d(n, "pick", function () {
        return Ar;
      }),
      r.d(n, "omit", function () {
        return Er;
      }),
      r.d(n, "throttle", function () {
        return jr;
      }),
      r.d(n, "toArray", function () {
        return Pr;
      }),
      r.d(n, "toString", function () {
        return Un;
      }),
      r.d(n, "uniqueId", function () {
        return Dr;
      }),
      r.d(n, "noop", function () {
        return Ir;
      }),
      r.d(n, "identity", function () {
        return Rr;
      }),
      r.d(n, "size", function () {
        return qr;
      }),
      r.d(n, "Cache", function () {
        return Tr;
      }),
      r.d(n, "isPointInPolygon", function () {
        return Br;
      }),
      r.d(n, "isPolygonsIntersect", function () {
        return Wr;
      }),
      r.d(n, "createDOM", function () {
        return $r;
      }),
      r.d(n, "modifyCSS", function () {
        return Fr;
      });
  },
  668: function (module, __webpack_exports__, __webpack_require__) {
    "use strict";
    __webpack_require__.d(__webpack_exports__, "a", function () {
      return generateECharts;
    });
    var _Common__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(21),
      _loaders_common__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(93),
      _antv_util__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(39);
    const $ = window.$,
      renderChart = async (item, config, chart) => {
        let jsFiles = Object(_Common__WEBPACK_IMPORTED_MODULE_0__.d)(
          config.jsFiles
        );
        chart
          ? chart.dispose()
          : config.isLocal
          ? await Object(_Common__WEBPACK_IMPORTED_MODULE_0__.n)(
              "./ec/echarts.min.js"
            )
          : await Object(_Common__WEBPACK_IMPORTED_MODULE_0__.n)(
              "https://lf3-cdn-tos.bytecdntp.com/cdn/expire-1-y/echarts/" +
                (config.version || "5.3.0") +
                "/echarts.min.js"
            );
        for (let t = 0; t < jsFiles.length; t++)
          jsFiles[t] &&
            (config.isLocal
              ? await Object(_Common__WEBPACK_IMPORTED_MODULE_0__.n)(
                  "./ec/" + jsFiles[t].split("/").pop()
                )
              : await Object(_Common__WEBPACK_IMPORTED_MODULE_0__.n)(
                  jsFiles[t]
                ));
        -1 !== config.code.indexOf("bmap") &&
          (await Object(_Common__WEBPACK_IMPORTED_MODULE_0__.n)(
            "https://api.map.baidu.com/getscript?v=2.0&ak=LgjotzCnb7UK15GNKnc45VIeQOqNV50R&services=&t="
          ),
          await Object(_Common__WEBPACK_IMPORTED_MODULE_0__.n)(
            "https://lf3-cdn-tos.bytecdntp.com/cdn/expire-1-y/echarts/5.3.0/extension/bmap.min.js"
          ));
        let myChart = window.echarts.init(item),
          root = config.isCommunity
            ? "https://echarts.axhub.im/"
            : "https://echarts.axhub.im/root/",
          newCode = config.code;
        (newCode = Object(_Common__WEBPACK_IMPORTED_MODULE_0__.o)(
          newCode,
          "ROOT_PATH + '/",
          "ROOT_PATH + '"
        )),
          (newCode = Object(_Common__WEBPACK_IMPORTED_MODULE_0__.o)(
            newCode,
            "ROOT_PATH",
            '"' + root + '"'
          )),
          (newCode = Object(_Common__WEBPACK_IMPORTED_MODULE_0__.o)(
            newCode,
            "'/",
            "'https://echarts.axhub.im/"
          )),
          (newCode = Object(_Common__WEBPACK_IMPORTED_MODULE_0__.o)(
            newCode,
            '"/',
            '"https://echarts.axhub.im/'
          ));
        let option =
          "(function() { var app = {}; \n " +
          newCode +
          "\n return option || null; }())";
        try {
          let opt = eval(option);
          opt && "object" === typeof opt && myChart.setOption(opt, !0);
        } catch (error) {
          console.error(error);
        }
        return chart && (chart = myChart), myChart;
      },
      generateECharts = async (t) => {
        let n = await Object(_loaders_common__WEBPACK_IMPORTED_MODULE_1__.a)(t),
          r = await renderChart(t, n);
        return (
          -1 !== window.location.host.indexOf("127.0.0.1") &&
            $(t).click(async (e) => {
              if (e.altKey) {
                window.openAxhubEditor ||
                  (await Object(_Common__WEBPACK_IMPORTED_MODULE_0__.n)(
                    n.AxhubEditorUrl ||
                      "https://gitee.com/sprain_zero/axure-charts/blob/main/charts/editor-v1.5.js"
                  ));
                const e = () => {
                  var t, r, e;
                  return {
                    config: {
                      type: "collapse",
                      children: [
                        {
                          type: "collapse-panel",
                          displayName: "EChart \u4ee3\u7801",
                          attributeId: "baseConfig",
                          children: [
                            {
                              type: "custom-text-area",
                              attributeId: "code",
                              initialValue: n.code,
                            },
                            {
                              type: "text",
                              textType: "link",
                              displayName: "\u5b98\u65b9\u4ee3\u7801",
                              attributeId: "link1",
                              link: "https://echarts.apache.org/examples/zh/",
                              initialValue: "\u524d\u5f80\u83b7\u53d6",
                            },
                            {
                              type: "text",
                              textType: "link",
                              displayName: "\u793e\u533a\u4ee3\u7801",
                              attributeId: "link2",
                              link: "https://www.makeapie.cn/",
                              initialValue: "\u524d\u5f80\u83b7\u53d6",
                            },
                          ],
                        },
                        {
                          type: "collapse-panel",
                          displayName: "\u52a0\u8f7d\u5668\u914d\u7f6e",
                          attributeId: "loaderConfig",
                          children: [
                            {
                              type: "input",
                              displayName: "\u7248\u672c",
                              attributeId: "version",
                              initialValue:
                                null !== (t = n.version) && void 0 !== t
                                  ? t
                                  : "5.3.0",
                            },
                            {
                              type: "checkbox",
                              displayName: "\u79bb\u7ebf\u6a21\u5f0f",
                              attributeId: "isLocal",
                              initialValue:
                                null !== (r = n.isLocal) && void 0 !== r
                                  ? r
                                  : void 0,
                            },
                            {
                              type: "array-data",
                              displayName: "js\u811a\u672c",
                              attributeId: "jsFiles",
                              initialValue:
                                null !==
                                  (e = Object(
                                    _Common__WEBPACK_IMPORTED_MODULE_0__.d
                                  )(n.jsFiles)) && void 0 !== e
                                  ? e
                                  : [],
                            },
                          ],
                        },
                      ],
                    },
                  };
                };
                window.openAxhubEditor({
                  element: {
                    right: ["g2", "g3", "g4", "b1", "u1"],
                    lib: "loaders",
                    container: t,
                  },
                  attributesConfig: e(n),
                  onConfigChange: (a) => {
                    let o = Object.keys(a)[0];
                    return (
                      "code" === o &&
                        (a[o] = Object(
                          _loaders_common__WEBPACK_IMPORTED_MODULE_1__.b
                        )(a[o])),
                      Object(_antv_util__WEBPACK_IMPORTED_MODULE_2__.a)(n, a),
                      renderChart(t, n, r),
                      e()
                    );
                  },
                  onAIChange: (a) => ((n.code = a), renderChart(t, n, r), e()),
                  getConfig: () => n,
                  getPrompt: () => ({
                    system:
                      "\u7ed9\u5b9a\u4e00\u4e2aEChart\u56fe\u8868\u7684\u914d\u7f6e\u6216\u9879\u76ee\u4ee3\u7801\u548c\u8981\u6c42\uff0c\u4f60\u9700\u8981\u6839\u636e\u8981\u6c42\u4fee\u6539\u914d\u7f6e\u4ee3\u7801\u5e76\u8fd4\u56de\uff0c\u4e0d\u8981\u4efb\u4f55\u6ce8\u91ca\u548c\u63cf\u8ff0\n\u4f8b\u5b50\uff1a\n\u4ee3\u7801\uff1aoption={a: 1, b: 2}\n\u8981\u6c42\uff1a\u5c06 b \u4fee\u6539\u4e3a 4\n\u8fd4\u56de\u503c\uff1aoption={a: 1, b: 4}\n",
                    code: n.code,
                  }),
                  getPng: () => {
                    const n = $(t).find("canvas")[0];
                    return {
                      width: $(t).width(),
                      height: $(t).height(),
                      base64: n.toDataURL("image/png"),
                    };
                  },
                });
              }
            }),
          r
        );
      };
  },
  669: function (module, __webpack_exports__, __webpack_require__) {
    "use strict";
    __webpack_require__.d(__webpack_exports__, "a", function () {
      return generateAntvG6;
    });
    var _Common__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(21),
      _common__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(93),
      _antv_util__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(39);
    const $ = window.$,
      formateCode = (t, n) => {
        let r = t;
        return (
          (r = r.replace("import insertCss from 'insert-css';", "")),
          (r = r.replace("import G6 from '@antv/g6';", "")),
          (r = r.replace('import G6 from "@antv/g6";', "")),
          (r = r.replace("from '@antv/util'", "= aUtil")),
          (r = r.replace("window.AntVUtil", "aUtil")),
          (r = r.replace("import {", "const {")),
          (r = r.replaceAll("'container'", "'" + n + "'")),
          (r = r.replaceAll('"container"', "'" + n + "'")),
          r
        );
      },
      generateAntvG6 = async (item) => {
        let config = await Object(_common__WEBPACK_IMPORTED_MODULE_1__.a)(item),
          container = $(item),
          version = config.version || "4.8.17";
        await Object(_Common__WEBPACK_IMPORTED_MODULE_0__.n)(
          "https://gw.alipayobjects.com/os/lib/antv/g6/" +
            version +
            "/dist/g6.min.js"
        );
        const insertCss = __webpack_require__(31),
          aUtil = __webpack_require__(64);
        if (config.code) {
          container.html("");
          let evalCode = formateCode(config.code, item.id);
          try {
            eval(evalCode);
          } catch (error) {
            console.error(error);
          }
        }
        -1 !== window.location.host.indexOf("127.0.0.1") &&
          $(item).click(async (e) => {
            if (e.altKey) {
              window.openAxhubEditor ||
                (await Object(_Common__WEBPACK_IMPORTED_MODULE_0__.n)(
                  config.AxhubEditorUrl ||
                    "https://gitee.com/sprain_zero/axure-charts/blob/main/charts/editor-v1.5.js"
                ));
              const getAttributesConfig = () => ({
                config: {
                  type: "collapse",
                  children: [
                    {
                      type: "collapse-panel",
                      displayName: "G6 \u4ee3\u7801",
                      attributeId: "baseConfig",
                      children: [
                        {
                          type: "custom-text-area",
                          attributeId: "code",
                          initialValue: config.code,
                        },
                        {
                          type: "text",
                          textType: "link",
                          displayName: "\u53ef\u590d\u5236\u56fe\u8868",
                          attributeId: "link1",
                          link: "https://g6.antv.antgroup.com/examples",
                          initialValue: "\u524d\u5f80\u83b7\u53d6",
                        },
                      ],
                    },
                  ],
                },
              });
              window.openAxhubEditor({
                element: {
                  right: ["g2", "g3", "g4", "b1", "u1"],
                  lib: "loaders",
                  container: item,
                },
                attributesConfig: getAttributesConfig(),
                onConfigChange: (newConfig) => {
                  let key = Object.keys(newConfig)[0];
                  "code" === key &&
                    (newConfig[key] = Object(
                      _common__WEBPACK_IMPORTED_MODULE_1__.b
                    )(newConfig[key])),
                    Object(_antv_util__WEBPACK_IMPORTED_MODULE_2__.a)(
                      config,
                      newConfig
                    ),
                    container.html("");
                  let evalCode = formateCode(config.code, item.id);
                  return eval(evalCode), getAttributesConfig();
                },
                onAIChange: (res) => {
                  (config.code = res), container.html("");
                  let evalCode = formateCode(config.code, item.id);
                  return eval(evalCode), getAttributesConfig();
                },
                getConfig: () => config,
                getPrompt: () => ({
                  system:
                    "\u7ed9\u5b9a\u4e00\u4e2aAntv G6 \u56fe\u8868\u7684\u9879\u76ee\u4ee3\u7801\u548c\u8981\u6c42\uff0c\u4f60\u9700\u8981\u6839\u636e\u8981\u6c42\u4fee\u6539\u4ee3\u7801\u5e76\u8fd4\u56de\uff0c\u4e0d\u8981\u4efb\u4f55\u6ce8\u91ca\u548c\u63cf\u8ff0\n\u4f8b\u5b50\uff1a\n\u4ee3\u7801\uff1alet option={a: 1, b: 2}\n\u8981\u6c42\uff1a\u5c06 b \u4fee\u6539\u4e3a 4\n\u8fd4\u56de\u503c\uff1alet option={a: 1, b: 4}\n",
                  code: config.code,
                }),
                getPng: () => {
                  const t = $(item).find("canvas")[0];
                  return {
                    width: $(item).width(),
                    height: $(item).height(),
                    base64: t.toDataURL("image/png"),
                  };
                },
              });
            }
          });
      };
  },
  670: function (module, __webpack_exports__, __webpack_require__) {
    "use strict";
    __webpack_require__.d(__webpack_exports__, "a", function () {
      return generateHighcharts;
    });
    var _Common__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(21),
      _loaders_common__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(93),
      _antv_util__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(39);
    const $ = window.$,
      generateHighcharts = async (item) => {
        let config = await Object(
            _loaders_common__WEBPACK_IMPORTED_MODULE_1__.a
          )(item),
          canvas;
        await Object(_Common__WEBPACK_IMPORTED_MODULE_0__.n)(
          "https://code.hcharts.cn/highcharts/highcharts.js"
        );
        const renderChart = async () => {
          if (config.code) {
            let jsFiles = Object(_Common__WEBPACK_IMPORTED_MODULE_0__.d)(
              config.jsFiles
            );
            for (let t = 0; t < jsFiles.length; t++)
              jsFiles[t] &&
                (await Object(_Common__WEBPACK_IMPORTED_MODULE_0__.n)(
                  jsFiles[t]
                ));
            let newCode = config.code;
            try {
              eval(newCode.replace("'container'", "'" + item.id + "'"));
              const svg = $(item).find("svg")[0];
              canvas = await Object(_Common__WEBPACK_IMPORTED_MODULE_0__.c)(
                $(svg).prop("outerHTML"),
                $(item).width(),
                $(item).height()
              );
            } catch (error) {
              console.error(error);
            }
          }
        };
        renderChart(item, config),
          -1 !== window.location.host.indexOf("127.0.0.1") &&
            $(item).click(async (t) => {
              if (t.altKey) {
                window.openAxhubEditor ||
                  (await Object(_Common__WEBPACK_IMPORTED_MODULE_0__.n)(
                    config.AxhubEditorUrl ||
                      "https://gitee.com/sprain_zero/axure-charts/blob/main/charts/editor-v1.5.js"
                  ));
                const t = () => {
                  var t;
                  return {
                    config: {
                      type: "collapse",
                      children: [
                        {
                          type: "collapse-panel",
                          displayName: "Highcharts \u4ee3\u7801",
                          attributeId: "baseConfig",
                          children: [
                            {
                              type: "custom-text-area",
                              attributeId: "code",
                              initialValue: config.code,
                            },
                            {
                              type: "text",
                              textType: "link",
                              displayName: "\u53ef\u590d\u5236\u56fe\u8868",
                              attributeId: "link1",
                              link: "https://www.hcharts.cn/demo/highcharts/",
                              initialValue: "\u524d\u5f80\u83b7\u53d6",
                            },
                          ],
                        },
                        {
                          type: "collapse-panel",
                          displayName: "\u52a0\u8f7d\u5668\u914d\u7f6e",
                          attributeId: "loaderConfig",
                          children: [
                            {
                              type: "array-data",
                              displayName: "js\u811a\u672c",
                              attributeId: "jsFiles",
                              initialValue:
                                null !==
                                  (t = Object(
                                    _Common__WEBPACK_IMPORTED_MODULE_0__.d
                                  )(config.jsFiles)) && void 0 !== t
                                  ? t
                                  : [],
                            },
                          ],
                        },
                      ],
                    },
                  };
                };
                if (config.code) {
                  const t = $(item).find("svg")[0];
                  canvas = await Object(_Common__WEBPACK_IMPORTED_MODULE_0__.c)(
                    $(t).prop("outerHTML"),
                    $(item).width(),
                    $(item).height()
                  );
                }
                window.openAxhubEditor({
                  element: {
                    right: ["g2", "g3", "g4", "b1", "u1"],
                    lib: "loaders",
                    container: item,
                  },
                  attributesConfig: t(),
                  onConfigChange: (n) => {
                    let r = Object.keys(n)[0];
                    return (
                      "code" === r &&
                        (n[r] = Object(
                          _loaders_common__WEBPACK_IMPORTED_MODULE_1__.b
                        )(n[r])),
                      Object(_antv_util__WEBPACK_IMPORTED_MODULE_2__.a)(
                        config,
                        n
                      ),
                      renderChart(),
                      t()
                    );
                  },
                  onAIChange: (n) => ((config.code = n), renderChart(), t()),
                  getConfig: () => config,
                  getPrompt: () => ({
                    system:
                      "\u7ed9\u5b9a\u4e00\u4e2a Highcharts \u56fe\u8868\u7684\u9879\u76ee\u4ee3\u7801\u548c\u8981\u6c42\uff0c\u4f60\u9700\u8981\u6839\u636e\u8981\u6c42\u4fee\u6539\u4ee3\u7801\u5e76\u8fd4\u56de\uff0c\u4e0d\u8981\u4efb\u4f55\u6ce8\u91ca\u548c\u63cf\u8ff0\n\u4f8b\u5b50\uff1a\n\u4ee3\u7801\uff1alet option={a: 1, b: 2}\n\u8981\u6c42\uff1a\u5c06 b \u4fee\u6539\u4e3a 4\n\u8fd4\u56de\u503c\uff1alet option={a: 1, b: 4}\n",
                    code: config.code,
                  }),
                  getPng: async () => {
                    var t;
                    return null !== (t = canvas) && void 0 !== t && t.toDataURL
                      ? {
                          width: $(item).width(),
                          height: $(item).height(),
                          base64: canvas.toDataURL("image/png"),
                        }
                      : {
                          width: $(item).width(),
                          height: $(item).height(),
                          base64:
                            "",
                        };
                  },
                });
              }
            });
      };
  },
  765: function (t, n, r) {
    t.exports = r(848);
  },
  80: function (t, n, r) {
    "use strict";
    r.r(n),
      r.d(n, "create", function () {
        return a;
      }),
      r.d(n, "clone", function () {
        return o;
      }),
      r.d(n, "fromValues", function () {
        return i;
      }),
      r.d(n, "copy", function () {
        return u;
      }),
      r.d(n, "set", function () {
        return c;
      }),
      r.d(n, "add", function () {
        return f;
      }),
      r.d(n, "subtract", function () {
        return l;
      }),
      r.d(n, "multiply", function () {
        return s;
      }),
      r.d(n, "divide", function () {
        return d;
      }),
      r.d(n, "ceil", function () {
        return h;
      }),
      r.d(n, "floor", function () {
        return p;
      }),
      r.d(n, "min", function () {
        return _;
      }),
      r.d(n, "max", function () {
        return m;
      }),
      r.d(n, "round", function () {
        return b;
      }),
      r.d(n, "scale", function () {
        return v;
      }),
      r.d(n, "scaleAndAdd", function () {
        return g;
      }),
      r.d(n, "distance", function () {
        return M;
      }),
      r.d(n, "squaredDistance", function () {
        return y;
      }),
      r.d(n, "length", function () {
        return x;
      }),
      r.d(n, "squaredLength", function () {
        return w;
      }),
      r.d(n, "negate", function () {
        return O;
      }),
      r.d(n, "inverse", function () {
        return C;
      }),
      r.d(n, "normalize", function () {
        return A;
      }),
      r.d(n, "dot", function () {
        return E;
      }),
      r.d(n, "cross", function () {
        return j;
      }),
      r.d(n, "lerp", function () {
        return P;
      }),
      r.d(n, "random", function () {
        return k;
      }),
      r.d(n, "transformMat2", function () {
        return D;
      }),
      r.d(n, "transformMat2d", function () {
        return I;
      }),
      r.d(n, "transformMat3", function () {
        return R;
      }),
      r.d(n, "transformMat4", function () {
        return q;
      }),
      r.d(n, "rotate", function () {
        return T;
      }),
      r.d(n, "angle", function () {
        return L;
      }),
      r.d(n, "zero", function () {
        return U;
      }),
      r.d(n, "str", function () {
        return B;
      }),
      r.d(n, "exactEquals", function () {
        return S;
      }),
      r.d(n, "equals", function () {
        return K;
      }),
      r.d(n, "len", function () {
        return N;
      }),
      r.d(n, "sub", function () {
        return V;
      }),
      r.d(n, "mul", function () {
        return W;
      }),
      r.d(n, "div", function () {
        return $;
      }),
      r.d(n, "dist", function () {
        return F;
      }),
      r.d(n, "sqrDist", function () {
        return G;
      }),
      r.d(n, "sqrLen", function () {
        return z;
      }),
      r.d(n, "forEach", function () {
        return H;
      });
    var e = r(19);
    function a() {
      var t = new e.a(2);
      return e.a != Float32Array && ((t[0] = 0), (t[1] = 0)), t;
    }
    function o(t) {
      var n = new e.a(2);
      return (n[0] = t[0]), (n[1] = t[1]), n;
    }
    function i(t, n) {
      var r = new e.a(2);
      return (r[0] = t), (r[1] = n), r;
    }
    function u(t, n) {
      return (t[0] = n[0]), (t[1] = n[1]), t;
    }
    function c(t, n, r) {
      return (t[0] = n), (t[1] = r), t;
    }
    function f(t, n, r) {
      return (t[0] = n[0] + r[0]), (t[1] = n[1] + r[1]), t;
    }
    function l(t, n, r) {
      return (t[0] = n[0] - r[0]), (t[1] = n[1] - r[1]), t;
    }
    function s(t, n, r) {
      return (t[0] = n[0] * r[0]), (t[1] = n[1] * r[1]), t;
    }
    function d(t, n, r) {
      return (t[0] = n[0] / r[0]), (t[1] = n[1] / r[1]), t;
    }
    function h(t, n) {
      return (t[0] = Math.ceil(n[0])), (t[1] = Math.ceil(n[1])), t;
    }
    function p(t, n) {
      return (t[0] = Math.floor(n[0])), (t[1] = Math.floor(n[1])), t;
    }
    function _(t, n, r) {
      return (t[0] = Math.min(n[0], r[0])), (t[1] = Math.min(n[1], r[1])), t;
    }
    function m(t, n, r) {
      return (t[0] = Math.max(n[0], r[0])), (t[1] = Math.max(n[1], r[1])), t;
    }
    function b(t, n) {
      return (t[0] = Math.round(n[0])), (t[1] = Math.round(n[1])), t;
    }
    function v(t, n, r) {
      return (t[0] = n[0] * r), (t[1] = n[1] * r), t;
    }
    function g(t, n, r, e) {
      return (t[0] = n[0] + r[0] * e), (t[1] = n[1] + r[1] * e), t;
    }
    function M(t, n) {
      var r = n[0] - t[0],
        e = n[1] - t[1];
      return Math.hypot(r, e);
    }
    function y(t, n) {
      var r = n[0] - t[0],
        e = n[1] - t[1];
      return r * r + e * e;
    }
    function x(t) {
      var n = t[0],
        r = t[1];
      return Math.hypot(n, r);
    }
    function w(t) {
      var n = t[0],
        r = t[1];
      return n * n + r * r;
    }
    function O(t, n) {
      return (t[0] = -n[0]), (t[1] = -n[1]), t;
    }
    function C(t, n) {
      return (t[0] = 1 / n[0]), (t[1] = 1 / n[1]), t;
    }
    function A(t, n) {
      var r = n[0],
        e = n[1],
        a = r * r + e * e;
      return (
        a > 0 && (a = 1 / Math.sqrt(a)), (t[0] = n[0] * a), (t[1] = n[1] * a), t
      );
    }
    function E(t, n) {
      return t[0] * n[0] + t[1] * n[1];
    }
    function j(t, n, r) {
      var e = n[0] * r[1] - n[1] * r[0];
      return (t[0] = t[1] = 0), (t[2] = e), t;
    }
    function P(t, n, r, e) {
      var a = n[0],
        o = n[1];
      return (t[0] = a + e * (r[0] - a)), (t[1] = o + e * (r[1] - o)), t;
    }
    function k(t, n) {
      n = n || 1;
      var r = 2 * e.c() * Math.PI;
      return (t[0] = Math.cos(r) * n), (t[1] = Math.sin(r) * n), t;
    }
    function D(t, n, r) {
      var e = n[0],
        a = n[1];
      return (t[0] = r[0] * e + r[2] * a), (t[1] = r[1] * e + r[3] * a), t;
    }
    function I(t, n, r) {
      var e = n[0],
        a = n[1];
      return (
        (t[0] = r[0] * e + r[2] * a + r[4]),
        (t[1] = r[1] * e + r[3] * a + r[5]),
        t
      );
    }
    function R(t, n, r) {
      var e = n[0],
        a = n[1];
      return (
        (t[0] = r[0] * e + r[3] * a + r[6]),
        (t[1] = r[1] * e + r[4] * a + r[7]),
        t
      );
    }
    function q(t, n, r) {
      var e = n[0],
        a = n[1];
      return (
        (t[0] = r[0] * e + r[4] * a + r[12]),
        (t[1] = r[1] * e + r[5] * a + r[13]),
        t
      );
    }
    function T(t, n, r, e) {
      var a = n[0] - r[0],
        o = n[1] - r[1],
        i = Math.sin(e),
        u = Math.cos(e);
      return (t[0] = a * u - o * i + r[0]), (t[1] = a * i + o * u + r[1]), t;
    }
    function L(t, n) {
      var r = t[0],
        e = t[1],
        a = n[0],
        o = n[1],
        i = Math.sqrt(r * r + e * e) * Math.sqrt(a * a + o * o),
        u = i && (r * a + e * o) / i;
      return Math.acos(Math.min(Math.max(u, -1), 1));
    }
    function U(t) {
      return (t[0] = 0), (t[1] = 0), t;
    }
    function B(t) {
      return "vec2(" + t[0] + ", " + t[1] + ")";
    }
    function S(t, n) {
      return t[0] === n[0] && t[1] === n[1];
    }
    function K(t, n) {
      var r = t[0],
        a = t[1],
        o = n[0],
        i = n[1];
      return (
        Math.abs(r - o) <= e.b * Math.max(1, Math.abs(r), Math.abs(o)) &&
        Math.abs(a - i) <= e.b * Math.max(1, Math.abs(a), Math.abs(i))
      );
    }
    var N = x,
      V = l,
      W = s,
      $ = d,
      F = M,
      G = y,
      z = w,
      H = (function () {
        var t = a();
        return function (n, r, e, a, o, i) {
          var u, c;
          for (
            r || (r = 2),
              e || (e = 0),
              c = a ? Math.min(a * r + e, n.length) : n.length,
              u = e;
            u < c;
            u += r
          )
            (t[0] = n[u]),
              (t[1] = n[u + 1]),
              o(t, t, i),
              (n[u] = t[0]),
              (n[u + 1] = t[1]);
          return n;
        };
      })();
  },
  848: function (t, n, r) {
    "use strict";
    r.r(n);
    var e = r(668),
      a = r(669),
      o = r(611),
      i = r(670),
      u = r(21),
      c = r(93),
      f = r(39);
    const l = window.$;
    r.d(n, "init", function () {
      return s;
    });
    ((t, n) => {
      let r = 0;
      setTimeout(function e() {
        t(), (r += 1), r < n && !window.loadLoaders && setTimeout(e, 300);
      }, 300);
    })(() => {
      !0 === window.loadLoaders && s(window.$axure, window.$);
    }, 5);
    const s = (t, n) => {
      t("@acp-echarts-chart")
        .$()
        .map((t, n) => {
          try {
            Object(e.a)(n);
          } catch (r) {
            console.error(
              "\u6e32\u67d3\u9047\u5230\u9ebb\u70e6\u5566\uff1a",
              r
            );
          }
        }),
        t("@acp-antvg6-chart")
          .$()
          .map((t, n) => {
            try {
              Object(a.a)(n);
            } catch (r) {
              console.error(
                "\u6e32\u67d3\u9047\u5230\u9ebb\u70e6\u5566\uff1a",
                r
              );
            }
          }),
        t("@acp-antvg2v4-chart")
          .$()
          .map((t, n) => {
            try {
              Object(o.a)(n);
            } catch (r) {
              console.error(
                "\u6e32\u67d3\u9047\u5230\u9ebb\u70e6\u5566\uff1a",
                r
              );
            }
          }),
        t("@acp-antvg2v5-chart")
          .$()
          .map((t, n) => {
            try {
              Object(o.b)(n);
            } catch (r) {
              console.error(
                "\u6e32\u67d3\u9047\u5230\u9ebb\u70e6\u5566\uff1a",
                r
              );
            }
          }),
        t("@acp-highcharts-chart")
          .$()
          .map((t, n) => {
            try {
              Object(i.a)(n);
            } catch (r) {
              console.error(
                "\u6e32\u67d3\u9047\u5230\u9ebb\u70e6\u5566\uff1a",
                r
              );
            }
          }),
        t("@acp-mermaid-chart")
          .$()
          .map((t, n) => {
            try {
              (async (t) => {
                let n,
                  r = await Object(c.a)(t),
                  e = l(t);
                await Object(u.n)(
                  "https://lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/mermaid/8.14.0/mermaid.min.js"
                ),
                  await Object(u.n)(
                    "https://lf26-cdn-tos.bytecdntp.com/cdn/expire-1-M/html2canvas/1.4.1/html2canvas.min.js"
                  );
                const a = window.mermaid,
                  o = () => {
                    l(e).html(""), a.initialize(r);
                    try {
                      a.mermaidAPI.render(
                        "mermaid-svg-" + t.id,
                        r.code,
                        async function (r) {
                          l(e).html(r),
                            window
                              .html2canvas(document.querySelector("#" + t.id))
                              .then((t) => {
                                n = t;
                              });
                        }
                      );
                    } catch (o) {
                      console.error(o);
                    }
                  };
                l(e).css("height", "auto"),
                  r.code && o(),
                  -1 !== window.location.host.indexOf("127.0.0.1") &&
                    l(t).click(async (e) => {
                      if (e.altKey) {
                        window.openAxhubEditor ||
                          (await Object(u.n)(
                            r.AxhubEditorUrl ||
                              "https://gitee.com/sprain_zero/axure-charts/blob/main/charts/editor-v1.js"
                          ));
                        const e = () => ({
                          config: {
                            type: "collapse",
                            children: [
                              {
                                type: "collapse-panel",
                                displayName: "G2 \u4ee3\u7801",
                                attributeId: "baseConfig",
                                children: [
                                  {
                                    type: "custom-text-area",
                                    attributeId: "code",
                                    initialValue: r.code,
                                  },
                                  {
                                    type: "text",
                                    textType: "link",
                                    displayName:
                                      "\u53ef\u590d\u5236\u56fe\u8868",
                                    attributeId: "link1",
                                    link: "https://g2-v4.antv.vision/zh/examples/",
                                    initialValue: "\u524d\u5f80\u83b7\u53d6",
                                  },
                                ],
                              },
                            ],
                          },
                        });
                        window.openAxhubEditor({
                          element: {
                            right: ["g2", "g3", "g4", "b1", "u1"],
                            lib: "loaders",
                            container: t,
                          },
                          attributesConfig: e(),
                          onConfigChange: (t) => (Object(f.a)(r, t), o(), e()),
                          onAIChange: (t) => ((r.code = t), o(), e()),
                          getConfig: () => r,
                          getPrompt: () => ({
                            system:
                              "\u7ed9\u5b9a\u4e00\u4e2a Mermaid \u56fe\u8868\u7684\u9879\u76ee\u4ee3\u7801\u548c\u8981\u6c42\uff0c\u4f60\u9700\u8981\u6839\u636e\u8981\u6c42\u4fee\u6539\u4ee3\u7801\u5e76\u8fd4\u56de\uff0c\u4e0d\u8981\u4efb\u4f55\u6ce8\u91ca\u548c\u63cf\u8ff0\n\u4f8b\u5b50\uff1a\n\u4ee3\u7801\uff1aflowchart LR\n\t\t\t\t\t\t\tStart --\x3e Stop\n\u8981\u6c42\uff1a\u5c06 stop \u4fee\u6539\u4e3a end\n\u8fd4\u56de\u503c\uff1aflowchart LR\n\t\t\t\t\t\t\tStart --\x3e end\n",
                            code: r.code,
                          }),
                          getImage: () => {
                            var r;
                            return null !== (r = n) &&
                              void 0 !== r &&
                              r.toDataURL
                              ? {
                                  width: l(t).width(),
                                  height: l(t).height(),
                                  base64: n.toDataURL("image/png"),
                                }
                              : {
                                  width: l(t).width(),
                                  height: l(t).height(),
                                  base64:
                                    "",
                                };
                          },
                        });
                      }
                    });
              })(n);
            } catch (r) {
              console.error(
                "\u6e32\u67d3\u9047\u5230\u9ebb\u70e6\u5566\uff1a",
                r
              );
            }
          });
    };
  },
  93: function (t, n, r) {
    "use strict";
    var e = r(21);
    var a = {
      "\u4ee3\u7801": "code",
      "\u7f16\u8f91\u5668\u914d\u7f6e": "axhubEditorConfig",
      "js\u811a\u672c": "jsFiles",
      "\u7248\u672c": "version",
      "\u79bb\u7ebf\u6a21\u5f0f": "isLocal",
      "\u793e\u533a\u6a21\u5f0f": "isCommunity",
      "\u5730\u56fe\u7f6e\u5e95": "isBack",
    };
    r.d(n, "a", function () {
      return o;
    }),
      r.d(n, "b", function () {
        return i;
      });
    const o = async (t) => {
        var n;
        const r = window.$;
        let o =
            (null === (n = r(t).parent().find('[data-label="acp-config"]')) ||
            void 0 === n
              ? void 0
              : n.attr("id")) || "",
          i = Object(e.g)(o, a) || {};
        i = (await Object(e.i)(t, i)).config;
        let u = r(t).parent().find('[data-label="acp-code-textArea"]');
        return (i.code = i.code || r(u).find("textArea").val() || ""), i;
      },
      i = (t) => {
        let n = !1,
          r = !1,
          e = !1,
          a = "";
        for (let o = 0; o < t.length; o++)
          n || r || e
            ? n
              ? ((a += t[o]),
                ("'" !== t[o] && '"' !== t[o]) || "\\" === t[o - 1] || (n = !1))
              : r
              ? "\n" === t[o] && ((r = !1), (a += t[o]))
              : e && "*" === t[o] && "/" === t[o + 1] && ((e = !1), o++)
            : "/" === t[o] && "/" === t[o + 1]
            ? ((r = !0), o++)
            : "/" === t[o] && "*" === t[o + 1]
            ? ((e = !0), o++)
            : "'" === t[o] || '"' === t[o]
            ? ((n = !0), (a += t[o]))
            : (a += t[o]);
        return a;
      };
  },
});
